I've implemented some new features yesterday, the bot has been running overnight but it still needs a lot of more testing to determine how stable it is.
Gekko is now able to watch trends at BTC-e
It appears that it is not possible to get historical data from BTC-e, so when you set it to watch btc-e Gekko will use data from bitcoincharts instead. You can set Gekko to watch and trade at these different currencies at the moment: USD, EUR and RUR.
Gekko cannot handle altcoins at the moment because I can't find any datasource (API) for them.
Gekko can now automatically mail you on new advice
This currently only works for Gmail and Google apps accounts. To enable this you need to set your email in address, you also have to provide your email password because Gekko will use your email address to send mails to yourself.
Make sure you've looked at the code before you provide your email address and password. Under the hood Gekko uses the emailjs module to send the email. Gekko is in NO way able to read your email or whatever and your email address and password are only sent to the gmail servers (over SSL).
(I don't like this solution very much, but I'm also not comfortable with shipping an API key for a service like Sendgrid. If anybody has a better idea that works cross platform, please let me know)
You can set the new features in Gekko's config.
Helping with Gekko
To stabilise Gekko and remove all bugs we need a lot of testing. If you are interested in Gekko you could set it up in your system and let it run (without auto trading disabled for example), this would speed up the process by a lot!
EDIT: I also looking for buy walls to figure out where the bounce will happen... You just must figure out which will hold.
The way Gekko is setup is that it implements trading methods. Right now it only knows about EMA. With the rules you are describing the best way to go would be to create a new trading method. Before we can go at this we do need all the rules clearly defined. I would have to give this idea some thought.
I love Node.JS, and I will definitely give Gekko a try.
I'm mostly trading on Bitstamp, so a priority request for me would be bitstamp support.
I could easily write my own bot giving advice on current price trend, but what I would be struggling with is automated trading, I'm wondering how you would implement a situation like this (taking into account the capabilities of the bitstamp API):
https://www.bitstamp.net/api/
Every new interval depending on the interval size, my bot would look at the previous interval close and determine a buy, sell, hold signal. If my bot discovers a buy signal, I would want to buy at the close of the previous interval:
So I use the bitstamp API and fill in a BUY LIMIT ORDER at the price of the previous close (BITSTAMP doesn't support BUY MKT).
Now either, my order gets filled for the quantity I want, or there isn't enough available at that moment.
How would you deal with that? Only buy the quantity that is available at that price by first looking at the order book? Or buy more at a higher price? What would your threshold be?
PS:
I read you have no real trading experience and you are using the bot currently live, note that EMA is an extremely simple indicator and is most likely to not turn up a lot of profit.
Regards,
Thanks! Note that Gekko is at this moment in no way an advanced trading bot. I also would like bitstamp in there, but because of the problem you are describing and the fact that there is no NPM module for bitstamp at this moment (I would have to create my own, not hard at all but it takes some time).
I'm still figuring out a decent way to solve the problem you are describing (BTC-e has the same problem). I was thinking of determining the price based on the last trades and the way the trend is heading at what speed. But that would be pretty dangerous as Gekko is not only speculating what is going to happen but also at what price it should buy.
I think there will be a threshold that determines (when buying for example) a higher price (more sure to get filled but less profitable). I don't think there is historical data about the order book which makes backtesting not really possible (have to look into this per exchange). I also think Gekko should monitor the orders, if they don't get filled after x minutes it will re try at a different price. (It isn't even doing that right now).
I'm open to suggestions!
About the algo: EMAs popularity is caused by Goomboo. But Gekko is currently setup so that new trading methods could get implemented rather easily: Describe your trading method in Gekko's methods, receive a object which fetches trade data and emit an advice event when you want to buy or sell.
I'm open to suggestions, what method would you like to see in Gekko?