Bitcoin Forum
November 09, 2024, 09:46:11 AM *
News: Latest Bitcoin Core release: 28.0 [Torrent]
 
   Home   Help Search Login Register More  
Pages: [1] 2 »  All
  Print  
Author Topic: [ANN] cointelligence.net - Create / test strategies for free online bot  (Read 2809 times)
csupnig (OP)
Newbie
*
Offline Offline

Activity: 21
Merit: 0


View Profile WWW
January 04, 2014, 09:18:16 PM
Last edit: March 26, 2014, 07:58:22 PM by csupnig
 #1

Hi!

My name is Chris and I started to develop a market analysing and trading tool for BTC and LTC (and possibly other currencies in future versions). The site is still in beta state and I started this topic to host all discussions regarding the website and as a platform for you to provide feedback.

You can find the first version here: http://www.cointelligence.net

http://www.cointelligence.net/img/screenshot.png http://www.cointelligence.net/img/screenshot2.PNG

Introduction
Cointelligence is a market analysing software that pulls the current market data from the platform servers (currently BTC-E and MtGox are supported) and feeds the data into a candle chart. Furthermore it provides the possibility to use and create strategies. These strategies can be tested on past and on the current market data. You can play around with different indicators and settings to find the strategy that best fits your needs. The strategies can also be used in the live trade feature. This requires the api credentials of your account. If you don’t want to enter those credentials => don’t use the live trade feature.

Technical stuff
The site currently supports BTC-E and MtGox. The server fetches the market data approximately every second, depending on the request time to the market servers. The server then passes the most current market data on to the clients where the selected strategy will be invoked with this data. All the strategies are created in JavaScript and are being executed in the user's browser. For the live trade feature the market api key/secret of your account is needed to make the balance/buy/sell requests to the market server. The api key/secret are sent to the server to sign the BTC-E API request there, they will not be stored on the server. If requested I will change the functionality, so that the request is signed in your browser so that the secret does not have to be sent to the server.

Strategies
You can select from different default strategies or use the strategy editor to create your own strategies in JavaScript. The code of these strategies will only be executed in your browser, so you do not cannot execute your strategy code on other user’s accounts. If you want to make a strategy publicly available, please use the github repository https://github.com/csupnig/cointelligence.

Warning / Money back
Please be aware that there is a risk involved when you trade with real money. Not all strategies work good in every market condition. Also since this is a free to use website and it is constantly under improvement, I cannot guarantee any level of availability of the service. I will not honour any request to reimburse any lost money.

Feedback
I am very much looking forward to your feedback and suggestions for improvement!

Support/Donation
If you like the project and want to keep the site running, please donate some bitcoin or litecoin  Smiley
BTC: 12po97evvxwNYyPE2SJ55ZMo8d3skiGAe6
LTC: LfZGDx1VzEz453oHzTeWE7urjNRnxgrm19

Roadmap
  • Support for further trading platforms / markets
  • Support for further currency pairs
  • Add more technical indicators (e.g. RSI, Ichimoku,…)
  • Import past market data for backtrack feature
  • Sharing, commenting and rating of user created strategies
  • Depending on the donations, I may have to implement advertisement to keep the site running

Update 1
  • Due to many requests, the API secret is now no longer sent to the server as the API request is now signed in your browser => The API secret will never leave your machine!
  • Added an option for a dark / high contrast theme
  • Added a manual strategy, where you have sell / buy buttons
  • Added more options to the RMA Rebalance Portfolio strategy
  • Added support for PCC/USD and NMC/USD on BTC-e

Update 2
  • Added functionality to create, save and rate strategies

Update 3
  • Changed the default interval to 5 minutes
  • Changed the order of the default strategies, so that the EMA Rebalance Portfolio (works best for me) is on top
  • Implemented AROON and RSI (they are now available in the MathUtils)
  • Implemented an ichimoku class in the custom combined strategy
  • Fixed some chart bugs in Firefox

Update 4
  • Fixed the volume fetchend from btce. Up to now we always had the volume of the last 24 hours. Now we have the correct volume of the period.
  • We are now using a proper online javascript editor (http://ace.c9.io/) for creating/editing strategies. It should make things easier now.
  • Implemented MFI (it is now available in the MathUtils)
  • Added a test strategy for AROON and MFI (it is not tuned yet... maybe you want to help?)

Update 5
  • Fixed rounding error that caused market API requests to fail
  • We are now combining and minifying the JavaScript files.
  • We are now combining and minifying the CSS files
  • We are now using a better modular implementation pattern that will allow us to soon run our code both in the browser and the server.
Catswold
Sr. Member
****
Offline Offline

Activity: 518
Merit: 251



View Profile
January 04, 2014, 10:14:37 PM
 #2

Very cool.  

Don't care for the gray background . . . need to so darker to you have greater contrast.  Like Bitcoinwisdom's graphics.  Black works . . . at least for these old eyes.



csupnig (OP)
Newbie
*
Offline Offline

Activity: 21
Merit: 0


View Profile WWW
January 04, 2014, 10:31:02 PM
 #3

Very cool.  

Don't care for the gray background . . . need to so darker to you have greater contrast.  Like Bitcoinwisdom's graphics.  Black works . . . at least for these old eyes.





Thanks for the feedback! I will try to add a high contrast theme as soon as possible...
csupnig (OP)
Newbie
*
Offline Offline

Activity: 21
Merit: 0


View Profile WWW
January 05, 2014, 12:21:27 AM
 #4

Very cool.  

Don't care for the gray background . . . need to so darker to you have greater contrast.  Like Bitcoinwisdom's graphics.  Black works . . . at least for these old eyes.

Thanks for the feedback! I will try to add a high contrast theme as soon as possible...

I added an option for a darker theme now. You can select it in the settings (top right of the page) Wink
stbot
Newbie
*
Offline Offline

Activity: 10
Merit: 0


View Profile
January 06, 2014, 02:20:32 PM
 #5

i love this idea! i would be worried about sending my key to someones server though.
csupnig (OP)
Newbie
*
Offline Offline

Activity: 21
Merit: 0


View Profile WWW
January 08, 2014, 06:22:02 PM
 #6

i love this idea! i would be worried about sending my key to someones server though.

I am completely with you on that. For now I used an existing open source server side API (https://github.com/petermrg/node-btce) to communicate with the market that requires me to provide the account's secret and key. As I wrote in my text above, I'll try to implement the client side request signing as soon as possible Wink
csupnig (OP)
Newbie
*
Offline Offline

Activity: 21
Merit: 0


View Profile WWW
January 12, 2014, 01:40:27 AM
 #7

I just deployed the first update. Go and check it out!


Update 1
  • Due to many requests, the API secret is now no longer sent to the server as the API request is now signed in your browser => The API secret will never leave your machine!
  • Added an option for a dark / high contrast theme
  • Added a manual strategy, where you have sell / buy buttons
  • Added more options to the RMA Rebalance Portfolio strategy
  • Added support for PCC/USD and NMC/USD on BTC-e
csupnig (OP)
Newbie
*
Offline Offline

Activity: 21
Merit: 0


View Profile WWW
January 12, 2014, 07:15:33 PM
 #8

I now added a strategy list, where you can vote and load strategies. Check it out here: http://www.cointelligence.net/#/strategies

Update 2
  • Added functionality to create, save and rate strategies
stbot
Newbie
*
Offline Offline

Activity: 10
Merit: 0


View Profile
January 17, 2014, 04:07:10 AM
 #9

What does the ANN stand for? Artificial Neural Network?
csupnig (OP)
Newbie
*
Offline Offline

Activity: 21
Merit: 0


View Profile WWW
January 17, 2014, 04:26:58 PM
 #10

What does the ANN stand for? Artificial Neural Network?

That is just the type of post => Announcement.

Up to now I have not coupled any neural network to a strategy. Would be interesting though!
thaReal
Member
**
Offline Offline

Activity: 73
Merit: 10


View Profile
January 18, 2014, 04:11:01 AM
 #11

Wow, I am so glad I found this - some amazing work csupnig

This is the first open source trading & strategy testing I've found that I believe could seriously be more useful than what's currently possible with MT4. I've only been playing with it for a few minutes, but I can tell you definitely have some impressive coding skills - for having just launched the site has a very clean, user friendly interface and seems like it has a ton of possibility for customization. I'll definitely be following this discussion and commenting further once I get some time in playing with the system.

As ironically was mentioned in the last post, attempting to utilize a neural network strategy would be interesting. I recently was involved in a competition where neural networks were (attempted) to be used in order to predict the price of options over a period of two hours using a data set with anonymous options and market inputs. As it turned out, at the end of the competition no one was able to actually develop a predictive model that provided any significant improvement vs. simple traditional models. In fact, while the goal of the competition was to utilize the market data, most of the models that performed well simply ignored the market data and used only price and time to train the model.

However, even though it was a similar exercise, just because a neural network model wasn't feasible in that situation doesn't mean it's not in this market and I think this is a great platform to try and test that. I look forward to working with you and your site - I'm excited to see what the possibilities are!!!
csupnig (OP)
Newbie
*
Offline Offline

Activity: 21
Merit: 0


View Profile WWW
January 19, 2014, 03:43:10 PM
 #12

Wow, I am so glad I found this - some amazing work csupnig

This is the first open source trading & strategy testing I've found that I believe could seriously be more useful than what's currently possible with MT4. I've only been playing with it for a few minutes, but I can tell you definitely have some impressive coding skills - for having just launched the site has a very clean, user friendly interface and seems like it has a ton of possibility for customization. I'll definitely be following this discussion and commenting further once I get some time in playing with the system.

As ironically was mentioned in the last post, attempting to utilize a neural network strategy would be interesting. I recently was involved in a competition where neural networks were (attempted) to be used in order to predict the price of options over a period of two hours using a data set with anonymous options and market inputs. As it turned out, at the end of the competition no one was able to actually develop a predictive model that provided any significant improvement vs. simple traditional models. In fact, while the goal of the competition was to utilize the market data, most of the models that performed well simply ignored the market data and used only price and time to train the model.

However, even though it was a similar exercise, just because a neural network model wasn't feasible in that situation doesn't mean it's not in this market and I think this is a great platform to try and test that. I look forward to working with you and your site - I'm excited to see what the possibilities are!!!

Thanks for your feedback and I'm happy that you found it useful! If you come across any questions regarding the functionality or need some assistance in getting your strategies to work... I'm here to help!

The other day I talked to a guy on the bitcoin meetup in vienna, and he was working on a neural network model for the bitcoin market. When I talked to him, he was at a very early stage of his project... I'm not sure if applying neural networks to market data would actually work, because it mostly does not follow a pattern at all. But I would love someone to prove me wrong on this Smiley
thaReal
Member
**
Offline Offline

Activity: 73
Merit: 10


View Profile
January 19, 2014, 06:38:58 PM
 #13

Wow, I am so glad I found this - some amazing work csupnig

This is the first open source trading & strategy testing I've found that I believe could seriously be more useful than what's currently possible with MT4. I've only been playing with it for a few minutes, but I can tell you definitely have some impressive coding skills - for having just launched the site has a very clean, user friendly interface and seems like it has a ton of possibility for customization. I'll definitely be following this discussion and commenting further once I get some time in playing with the system.

As ironically was mentioned in the last post, attempting to utilize a neural network strategy would be interesting. I recently was involved in a competition where neural networks were (attempted) to be used in order to predict the price of options over a period of two hours using a data set with anonymous options and market inputs. As it turned out, at the end of the competition no one was able to actually develop a predictive model that provided any significant improvement vs. simple traditional models. In fact, while the goal of the competition was to utilize the market data, most of the models that performed well simply ignored the market data and used only price and time to train the model.

However, even though it was a similar exercise, just because a neural network model wasn't feasible in that situation doesn't mean it's not in this market and I think this is a great platform to try and test that. I look forward to working with you and your site - I'm excited to see what the possibilities are!!!

Thanks for your feedback and I'm happy that you found it useful! If you come across any questions regarding the functionality or need some assistance in getting your strategies to work... I'm here to help!

The other day I talked to a guy on the bitcoin meetup in vienna, and he was working on a neural network model for the bitcoin market. When I talked to him, he was at a very early stage of his project... I'm not sure if applying neural networks to market data would actually work, because it mostly does not follow a pattern at all. But I would love someone to prove me wrong on this Smiley

Thanks for the response, I'll send you a message once I've actually spent the time working with the code. With the Nerual Network model - I don't think that there's much significance in using the traditional approach of training the model with common inputs like EMA, Volume, Price, etc. (well to a certain extent, these things obviously play a role and need to be accounted for somewhere in the model). My thought, which I admit I haven't spent the time to experiment with yet, is that maybe its possible to get better results by training a model based on the parameters of the coin and the market(s) it's being traded in.

More specifically, I think that to a certain extent a lot of the coins being released now have similar features to the original coins (since most of them were basically just copies anyway with a few modified parameters, i.e. any coingen coin) so theoretically the market on a macro level should to some extent mirror the markets of those previous coins. If you assume this to be true you could try to develop a NN based off of these training parameters to get a general model and then add inputs like EMA, Price, & Volume to hopefully get a reasonably predictive time-series model.

My reasoning is that the fundamental problem with neural networks are that they're very dependent on the dataset used to train the model, so they end up being highly dependent on the time interval you use to train your model, which means that while you can sometimes get it to fit to a specific case, the model is going to fall apart when anything rapidly changes, and with this market that's always. By doing the way I'm proposing, (theoretically) you're generalized model is more robust as it's not time-dependent and then you would likely have to derive several specific-models based on time-dependent market data.

Whew, well that was a mouthful - I know it's a lot of theory right now, but hopefully in the next week or two I can take a rough pass at trying to build a model and see if there's any promise here. Before I get started with that though, I'd like to spend more time playing with some of the existing strategies you developed. Admittedly, they do not perform well at the moment, but I understand how much work must have went in to just getting them working (along with everything else) so hopefully I can work on tweaking some of them until they at least start to perform more consistently and then work from there.
stbot
Newbie
*
Offline Offline

Activity: 10
Merit: 0


View Profile
January 20, 2014, 11:56:29 PM
 #14

I would be curious to know how your work on a neural network pans out. Keep us posted if you work on it past theory!
brainstorm
Newbie
*
Offline Offline

Activity: 1
Merit: 0


View Profile
January 21, 2014, 01:10:24 PM
 #15

Hi,

im pretty new in the whole strategy business, however i allready traded a little bit on btc-e.com.
does your side make automatical trades via btc-e.com or how does it excatly works, because i dont get it lol
sorry for beeing a noob on this
csupnig (OP)
Newbie
*
Offline Offline

Activity: 21
Merit: 0


View Profile WWW
January 21, 2014, 09:09:40 PM
 #16

Wow, I am so glad I found this - some amazing work csupnig

This is the first open source trading & strategy testing I've found that I believe could seriously be more useful than what's currently possible with MT4. I've only been playing with it for a few minutes, but I can tell you definitely have some impressive coding skills - for having just launched the site has a very clean, user friendly interface and seems like it has a ton of possibility for customization. I'll definitely be following this discussion and commenting further once I get some time in playing with the system.

As ironically was mentioned in the last post, attempting to utilize a neural network strategy would be interesting. I recently was involved in a competition where neural networks were (attempted) to be used in order to predict the price of options over a period of two hours using a data set with anonymous options and market inputs. As it turned out, at the end of the competition no one was able to actually develop a predictive model that provided any significant improvement vs. simple traditional models. In fact, while the goal of the competition was to utilize the market data, most of the models that performed well simply ignored the market data and used only price and time to train the model.

However, even though it was a similar exercise, just because a neural network model wasn't feasible in that situation doesn't mean it's not in this market and I think this is a great platform to try and test that. I look forward to working with you and your site - I'm excited to see what the possibilities are!!!

Thanks for your feedback and I'm happy that you found it useful! If you come across any questions regarding the functionality or need some assistance in getting your strategies to work... I'm here to help!

The other day I talked to a guy on the bitcoin meetup in vienna, and he was working on a neural network model for the bitcoin market. When I talked to him, he was at a very early stage of his project... I'm not sure if applying neural networks to market data would actually work, because it mostly does not follow a pattern at all. But I would love someone to prove me wrong on this Smiley

Thanks for the response, I'll send you a message once I've actually spent the time working with the code. With the Nerual Network model - I don't think that there's much significance in using the traditional approach of training the model with common inputs like EMA, Volume, Price, etc. (well to a certain extent, these things obviously play a role and need to be accounted for somewhere in the model). My thought, which I admit I haven't spent the time to experiment with yet, is that maybe its possible to get better results by training a model based on the parameters of the coin and the market(s) it's being traded in.

More specifically, I think that to a certain extent a lot of the coins being released now have similar features to the original coins (since most of them were basically just copies anyway with a few modified parameters, i.e. any coingen coin) so theoretically the market on a macro level should to some extent mirror the markets of those previous coins. If you assume this to be true you could try to develop a NN based off of these training parameters to get a general model and then add inputs like EMA, Price, & Volume to hopefully get a reasonably predictive time-series model.

My reasoning is that the fundamental problem with neural networks are that they're very dependent on the dataset used to train the model, so they end up being highly dependent on the time interval you use to train your model, which means that while you can sometimes get it to fit to a specific case, the model is going to fall apart when anything rapidly changes, and with this market that's always. By doing the way I'm proposing, (theoretically) you're generalized model is more robust as it's not time-dependent and then you would likely have to derive several specific-models based on time-dependent market data.

Whew, well that was a mouthful - I know it's a lot of theory right now, but hopefully in the next week or two I can take a rough pass at trying to build a model and see if there's any promise here. Before I get started with that though, I'd like to spend more time playing with some of the existing strategies you developed. Admittedly, they do not perform well at the moment, but I understand how much work must have went in to just getting them working (along with everything else) so hopefully I can work on tweaking some of them until they at least start to perform more consistently and then work from there.

I'm with you on the thought that a neural network model would be highly dependent on the time and at least some recurring pattern. Maybe it would be easier to get a model going that works good for a longer period.

You're right, that most of the strategies that I developed do not perform very good. I simply created them to test the possibilities and see if my implementation of the technical indicators works. I think they would perform much better, if someone could take the time to tune them for a specific market and a period e.g. btc-e ltc/usd with a period of 5m. In the next days I'm trying to implement more technical indicators, so that you guys have a lot to play with Wink When you test out strategies, be sure to keep us posted on your findings Wink
csupnig (OP)
Newbie
*
Offline Offline

Activity: 21
Merit: 0


View Profile WWW
January 21, 2014, 09:19:01 PM
 #17

Hi,

im pretty new in the whole strategy business, however i allready traded a little bit on btc-e.com.
does your side make automatical trades via btc-e.com or how does it excatly works, because i dont get it lol
sorry for beeing a noob on this

Hi there,

yes, if you provide it with your API secret and your API key from BTC-e, it will be able to perform automatic trades for you. Just be sure to select and test a proper strategy before! Use the back test and the live test to do that.

The API secret will never be sent to the server (so your account is save), it will just be used to perform client side signing of the requests, that will be sent to BTC-e.

If you're into coding, you can even create your own strategies in JavaScript.

If you have any further questions, don't hesitate to ask!
csupnig (OP)
Newbie
*
Offline Offline

Activity: 21
Merit: 0


View Profile WWW
January 21, 2014, 09:27:10 PM
 #18

Update 3
  • Changed the default interval to 5 minutes
  • Changed the order of the default strategies, so that the EMA Rebalance Portfolio (works best for me) is on top
  • Implemented AROON and RSI (they are now available in the MathUtils)
  • Implemented an ichimoku class in the custom combined strategy
  • Fixed some chart bugs in Firefox
csupnig (OP)
Newbie
*
Offline Offline

Activity: 21
Merit: 0


View Profile WWW
January 23, 2014, 10:01:52 PM
 #19

We had some problems with the btc-e api today. This resulted in updates not being properly recorded and pushed to the browsers.

The requests seem to get through now and I hope the issues are resolved. I apologize for any inconvenience Wink

thaReal
Member
**
Offline Offline

Activity: 73
Merit: 10


View Profile
January 24, 2014, 01:27:40 AM
 #20

So I started toying with strategies again and while I wasn't able to actually turn a profit using the preset Aroon strategy, I did see some positive results when I applied it to intervals of a few days.
It  seemed to do a very good job of detecting entry and exit points (in backtesting); I think that the only reason it wasn't profitable was because of the binary trade execution (i.e. sell 100% once signal is determined and vice versa). I'd like to use the code as a starting point and try to add a basic algorithm to make incremental buys and sells rather than all or nothing. I'm pretty sure that by just adding a set of a few simplistic rules you could turn the algo profitable.

The one thing that I'm a little confused on is the MathUtil.Aroon method. First, in the code I see three parameters: high, low, 22 - what is the 22 for? Also I'm not sure exactly how the overarching code uses the call to this method to make trades. From the code, it seems like you're just getting the aroon.up and aroon.down, finding the difference and then calling a buy or sell method depending on whether the result is positive or negative.

I have to imagine that's pretty close to what's happening, but I know I'm missing something. For instance, if that was the case then a trade would be initiated at every interval except for the case where aroon.up = aroon.down, which I would think would be fairly uncommon. But the strategy is obviously not making trades at every interval so I know that there has to be more to it than that. Maybe you could help point me in the right direction? Thanks!
Pages: [1] 2 »  All
  Print  
 
Jump to:  

Powered by MySQL Powered by PHP Powered by SMF 1.1.19 | SMF © 2006-2009, Simple Machines Valid XHTML 1.0! Valid CSS!