Pages:
Author

Topic: Goomboo's Journal - page 5. (Read 281467 times)

member
Activity: 70
Merit: 11
January 12, 2014, 08:41:29 AM

- I don't quite understand these bots (Gekko & Butter Bot), do they actually auto-trade on the given exchange or just send you a message and you trade manually?

Gekko supports both manual and auto-trade on the exchange.

I've read both, that Gekko is and isn't compatible with BTC-E.
Do you know if it is compatible?
member
Activity: 113
Merit: 10
January 12, 2014, 08:34:53 AM

- I don't quite understand these bots (Gekko & Butter Bot), do they actually auto-trade on the given exchange or just send you a message and you trade manually?

Gekko supports both manual and auto-trade on the exchange.
sr. member
Activity: 302
Merit: 250
January 12, 2014, 04:15:48 AM
I just found here, a couple of questions:

- Any successful traders here besides Goomboo? Someone who learned from him?

- I was referred to this thread either from Butter Bot (https://bitcointalksearch.org/topic/closed-butter-bot-premier-bitstamp-and-btc-e-ema-trading-platform-closed-197175) and Gekko (https://bitcointalksearch.org/topic/gekko-a-javascript-trading-bot-and-backtesting-platform-209149). Other bitcoin bots out there as honorable mentions? And why should I but Butter Bot if I can ge the same for free in Gekko  -if I understand correctly.

@Goomboo, a few questions to you:
- Your average win/lose ratio? (number of trades won/number of trades lost)?
- Your average risk: reward ratio? (when you win, it is how many times as much as a loser trade?)
- In general how many trades do you take per day/month/or week? I don't know if it is called high frequency or not

- I don't quite understand these bots (Gekko & Butter Bot), do they actually auto-trade on the given exchange or just send you a message and you trade manually?
- Do you trade not only multiple markets but multiple styles as well? What gratification multiple trading gives you? (I read somewhere about http://forums.babypips.com/fundamental-ville/386-pete-trader-college-lesson-multiple-personality-trading-disorder.html, just for fun:))
- Butter Bot claims 3464% profit over the last two years, that translates to me a little more than 15% a month. Not bad. Obviously it comes with a given risk level. I don't know what is a good risk level. Maybe the Sharpe ratio? Gan you get better results (read:lower risk, more stable profits) with no leverage and higher stop-loss or leverage and lower stop loss?

I personally am not a big fan of much demo trading. Rather open a small real account ($100) and trade live on that.
- Which market do you recommend a newbie over others and why? If I don't want to develop a multiple trading disorder myself ;P What unique characteristics the bitcoin market offers traders?
- What books should I read in between and in what order? First read, then trade, first trade, then read? Just take care not to lose much money in the beginning?

Questions are not only for Goomboo, anyone feeling herself competent feel free to contribute!

Edit: Malcolm Gladwell famously said that you need 10,000 hours to be world class in anything: https://en.wikipedia.org/wiki/Outliers_(book)

But do you really need to be/want to be world class?

For Josh Kaufman, 20 hours are enough Smiley
https://www.youtube.com/watch?v=lB6K60mkmho
http://www.amazon.com/First-20-Hours-Learn-Anything/dp/1591845556
sr. member
Activity: 427
Merit: 250
January 03, 2014, 06:07:38 PM
Welcome.

For me this is a pretty strange picture as relatively high profits are mostly concentrated along pairs of "neighbor" MAs.

Automatic probing of different threshold values will require many changes to the script structure. Maybe I'll take a look at it after finishing the bot script.
member
Activity: 116
Merit: 11
January 03, 2014, 05:57:57 PM
Thank you,

Ok, so having this specific value for thresholds improves the Max. values for all intervals and sometimes improves and sometimes worsen the averages.

Probably that on a period with higher volatility the results (compared to 0 thresholds) would be quite different. And same for different threshold values Smiley.

sr. member
Activity: 427
Merit: 250
January 03, 2014, 05:50:04 PM
Additional text statistics for these heatmaps.
http://www.sendspace.com/filegroup/7dowlksziR9P5QK2y9UX1w

Pushed changes to github so welcome to test different parameters.
sr. member
Activity: 427
Merit: 250
January 03, 2014, 05:37:39 PM
I have chosen one month for testing - september 2013 as it is pretty flat.

Traditional strategy:

5 min

15 min

30 min

1 hour

2 hours


Using thresholds of 0.5:
5 min

15 min

30 min

1 hour

2 hours

member
Activity: 116
Merit: 11
January 03, 2014, 05:11:25 PM
I assume you meant:

a) sell only if dif < -threshold_sell (-0.5)
b) buy only if dif > threshold_buy  (0.06)

Right?
.

yes, sorry.
sr. member
Activity: 427
Merit: 250
January 03, 2014, 04:53:39 PM
I assume you meant:

a) sell only if dif < -threshold_sell (-0.5)
b) buy only if dif > threshold_buy  (0.06)

Right?

I'm going to hardcode 0.25 for both thresholds now, let's see what would the difference be. I think it would take around half an hour from now to finish the simulations.
member
Activity: 116
Merit: 11
January 03, 2014, 04:43:10 PM
I'm not aware of any way to choose these thresholds, but you can start from 0.25 (both buy and sell) as default values. And then iterate up and down in 0.05 steps or smth. similar (until you reach min.0 max??? maybe 0.8-1.0). 

I agree it is a lot of data (if you use 0.0-1.0 interval and 0.05 step you will have 400 combinations for each EMA pair), but that's where computers are good for Smiley. If you want to show this visually on your heatmap I would try to calculate best pair of buy/sell thresholds for each EMA pair and display only that one(s) in the relevant block.

But, a first step would be to at least allow users to set these values when running the script (instead of using 0,0 all the time).
sr. member
Activity: 427
Merit: 250
January 03, 2014, 04:04:09 PM
All right! Now it's clear. I was also struggling on how to optimize strategy for these cases as they cause pretty much loss during low volatility. I read somewhere about "kind of angle of crossing", but haven't thought up an idea how to do that. Instead I used SAR and according to my test it helped a bit.

How did you choose values of these thresholds? I think it'd be also interesting to iterate over different combinations of those values too, but it would generate enormous amount of data which would take ages to graph.
member
Activity: 116
Merit: 11
January 03, 2014, 03:50:00 PM
I'm not sure that this is the case all the time.

If you want a visual representation of the thresholds they represent the "cloud"/distance between the two EMA lines. So if the two EMA lines cross each other but the difference is not very big the buy/sell trigger will not be fired. So you can have intervals where one one EMA crosses the other and then goes back quite fast (with 0 thresholds this will trigger one buy and one sell, while with some thresholds setup it will not trigger any action (as long as the thresholds are not reached).

Also note that the thresholds do not need to be symmetric (e.g. buy=sell thresholds). So you could sell instantly when the two EMA crosses (sell thresholds=0), but wait for the buy until the difference between the EMAs is large enough.
sr. member
Activity: 427
Merit: 250
January 03, 2014, 03:38:34 PM

Thank you for your feedback, what I wanted to raise is that the buy/sell threshold make very big difference in the final result. For example: http://postimg.org/image/xl9kf5k6h/ in this period of time (with those intervals) there is no ema pair that makes profit, however, for the same period/intervals setting some threshold values will generate profit for various ema pairs. 

Thanks for clarification. Don't you think that setting thresholds is almost the same that working on larger intervals, with the only difference that buy and sell decisions would be triggered differently? This is pure speculation based on rough estimation as I can't imagine buy/sell graph in my mind for your formula Smiley
member
Activity: 116
Merit: 11
January 03, 2014, 03:31:51 PM


Trade bots may use any strategy. I don't think there are any best practices. I didn't use thresholds either.

Trying to figure out what would be the result of using your formula... Pretty unclear to me. So... It turns out to be some kind of a tool to make decision even more concrete, right? It would put buy or sell action further away from actual EMA cross thus eliminating false positives. But at the same time there would be negative side effect - higher prices to buy and lower prices to sell if trend is advancing. Interesting, needs additional testing.



Thank you for your feedback, what I wanted to raise is that the buy/sell threshold make very big difference in the final result. For example: http://postimg.org/image/xl9kf5k6h/ in this period of time (with those intervals) there is no ema pair that makes profit, however, for the same period/intervals setting some threshold values will generate profit for various ema pairs. 
sr. member
Activity: 427
Merit: 250
January 03, 2014, 03:16:41 PM
Hello,

I'm very interested in the heatmap script showed before in the thread. I want to use it for the LTC/BTC pair on BTC-e, but for a little pair like this, I don't know how often to re-evaluate EMA values. Each week? Each month?

Thank you Smiley

I'd choose some kind of universal pair that shows stable profits (or smallest losses) on different time periods in different market conditions, be it rally or aggressive downtrend. That's what Goomboo was talking in the very beginning as far as I understood. So take the script, test it on different time periods and see how it goes Smiley

Also if you are going to use get_data.py script to update your CSV files - beware of hardcoded btc_usd pair there!

Sorry for absence of documentation, I'm much more into the analysis now rather than putting everything in good order. Thus the script itself is also pretty messy. However the first priority task is to finish the bot script to unleash it to the wilds Smiley
sr. member
Activity: 427
Merit: 250
January 03, 2014, 03:02:09 PM
Great tool, Queeq, but is there a way to setup a sell and buy threshold?

E.g. if  threshold_sell  = 0.5 and threshold_buy = 0.06 calculate the difference between EMAs

dif = 100 * (short - long) / ((short + long)/2)

a) buy only if dif < -threshold_sell (-0.5)
b) sell only if dif > threshold_buy  (0.06)


as this is (per my understanding) how the EMA tradebots work.


Trade bots may use any strategy. I don't think there are any best practices. I didn't use thresholds either.

Trying to figure out what would be the result of using your formula... Pretty unclear to me. So... It turns out to be some kind of a tool to make decision even more concrete, right? It would put buy or sell action further away from actual EMA cross thus eliminating false positives. But at the same time there would be negative side effect - higher prices to buy and lower prices to sell if trend is advancing. Interesting, needs additional testing.

I have just pushed latest changes to the git repository. Decision function is separated now and it must be easier to add new strategies.

Also I added parabolic SAR implementation and it helped me to exclude some of the false positives giving slightly more profit. It's coded in "Algorithm #2". Buy as usual, sell only when both fast < slow and SAR trending down.


ATTENTION EVERYONE
Bitcoincharts.com have incorrect order of some trades in CSV files!
Thus rendering all of my previous calculations inaccurate. On unix you can correct this using sort:
Code:
sort -t ',' -k 1 -o
I've included simple check script in my repo, it will show inconsistencies if there are any or otherwise just print number of lines as it iterates over a file.
full member
Activity: 213
Merit: 100
January 03, 2014, 02:48:26 PM
Hello,

I'm very interested in the heatmap script showed before in the thread. I want to use it for the LTC/BTC pair on BTC-e, but for a little pair like this, I don't know how often to re-evaluate EMA values. Each week? Each month?

Thank you Smiley
member
Activity: 116
Merit: 11
January 03, 2014, 01:30:39 PM
Great tool, Queeq, but is there a way to setup a sell and buy threshold?

E.g. if  threshold_sell  = 0.5 and threshold_buy = 0.06 calculate the difference between EMAs

dif = 100 * (short - long) / ((short + long)/2)

a) buy only if dif < -threshold_sell (-0.5)
b) sell only if dif > threshold_buy  (0.06)


as this is (per my understanding) how the EMA tradebots work.
full member
Activity: 238
Merit: 100
December 30, 2013, 09:51:13 AM
Rampions main argument against EMA-systems is fees and slippage, especially if you have rather big holdings and I think these two things are too the toughest ones to beat. One solution could be a compromise. You could adjust your trading wallet size accordingly. If you have big holdings you should maybe hold more and if you have smaller holdings you could trade more. Even if the % win isn't as big with big holdings it's still a lot of added coins vs. buy and hold.

Of course this is a job if you start to trade and it takes time, effort and discipline, you maybe have no time for other jobs and that's of course loss to your holdings and you could end up still losing your trades in a long run. One important thing is to evaluate that is this how you want to use your time? My choice is to be trader nevertheless.

Nice to see that this thread has grown to talk about taking the 21/10 hourly system to another level. I haven't read this in awhile. Keep it up!
newbie
Activity: 28
Merit: 0
December 22, 2013, 02:08:18 PM
For those using php here's a little script I made which generates candle files from bitcoincharts.com (using for example wget http://api.bitcoincharts.com/v1/csv/btceUSD.csv). Alter the $candlesize parameter to set the desired candlesize.
Rename the file you get from bitcoincharts to btc.csv and run the script.
Output is a csv which can be used for Gekko backtesting.

wow!
Please, wouldn't you be so kind to modify the script so the output would be:
date open (yyyymmdd), time open (mm:hh), open price, high price, low price, close price, volume
I don't know php and hell I am so tired of trying to get that historical data inside MT4.

edit:
well... I am trying to understand your script and as far as I understand it is doing pretty much the same I need...
edit:
no, TRADES is nomber of trades not the voulume. And I wonder what is the format of $nextstamp?
Pages:
Jump to: