How many markets can your algo handle?
Forums › ProRealTime English forum › General trading discussions › How many markets can your algo handle?
- This topic has 14 replies, 5 voices, and was last updated 5 years ago by Vonasi.
-
-
01/30/2019 at 8:40 AM #90001
As title says, your best algo, can u run in other markets?
What timeframe(s)?
What markets?
What style of trading? (Breakout/momentum/mean reversion)Did you have to re-optimize alot or could u (almost) just run it in another market?
I got a couple that runs in different US indicies + DAX (US tech, US 500, Wall st, dax) on 1h timeframe, 30 min timeframe, all breakout/momentum.
Did a re-optimize but all variables very close to original ones except stop loss/target.01/30/2019 at 1:28 PM #90044While im on this topic: Lets say you have sytsem “A” working in Dax 1h.
You put system A with the exact same variables in for example Nasdaq and it looks pretty good, but obviously its not “perfect” seeing that the variables have been optimized for dax, but overall it looks more than good enough to start working on it in nasdaq market as well.
Question then is: Do you optimize as if this was a new strategy in a market youve never seen? Or do you just re-optimize with variables very close to the original code?
Do you re-optimize on entire data set, knowing that the code is working fine in DAX?
Do you re-optimize on 50% of the data set, still tho knowing that it might be even better if oiptimized on 100% of the data, knowing that it runs fine in dax and looks already good in nasdaq?Like how do you “use” a system in other markets? Re-optimizing? Just run it as is and only change stop loss/target?
Im really not sure
01/30/2019 at 2:02 PM #90057Heres an example, i took my System A and put it in nasdaq and optimized it on data from 2016 -> 2019…. keeping 2010 -> 2016 = out of sample
So i have included equity graph photo of the original dax code and the optimized on 40~% data one. + 3 detailed reports:
- 1 original dax code
- 1 optimized on 3 years of data (2016 jan-2019 jan.)
- 1 optimized on 100% <– I did not pick the “top gainer” variables but rather one that looked like it produced pretty even profit every year, was within top 10.
Any thoughts? Like what would you guys do in this case?
The original DAX code has never ever seen nasdaq data so it “cant” be curvefit to data it has never seen (obviously anything can happen lol), so the algo itself looks pretty good.
But do i go for optimized on 3 years or optimized on 8 years?
Or just do the original because its “the least” curvefitted one?None of them? Why?
Tests have been done on Nasdaq 100$ contracts because thats the only way to get 8~ years of data on <1h charts.. Will be running with 2-3 contracts on 1€ market..
01/31/2019 at 11:02 AM #90128Do you optimize as if this was a new strategy in a market youve never seen?
Not read last comment yet, bur in case I forget to comment on above …
Yes I would, but mainly I think because … I’d have to know?? 🙂
01/31/2019 at 11:15 AM #9012901/31/2019 at 11:35 AM #90130Perfect questions Jebus89.
I was asking that myself.Personally I still re-optimise the other markets with IS and OOS. Dont really know why but it makes me feel safer compared to just optimise 100% of the data.
In podcast, which I have listend, they talked about robust systems should perform somewhat similar in correlating markets. But I havent heard yet whether you should just use the original system or re-optimise it. Or dont apply it on other markets at all.
01/31/2019 at 12:25 PM #90138@Grahal: The picture with the equity curves: The bottom dark blue one, that says “DAX original” is the code that is running on dax today, no optimizing done in NQ at all. (the chart is NQ)
The one curve (top one, light blue) with the “in sample” and “out of sample” is the DAX code on NQ that has been optimized on the “in sample” data only.
All the detailed reports are for US tech (NQ) 1h chart.
O-jay, yes me too, i optmize with in sample/out of sample because i would also like to make sure i dont fuck myself in the ass. But i would also like to at least think that optimizing an algo that looks good in another market, can be optimized on 100% using variables very close to the original code.
I mean u have to optimize stop and target anyways right, might as well do that on 100% of the data seeing how the trades are already “decided” by the algo, but the stop loss and target just maximizes the trades profitability. Wouldnt u want to optimize that part on as many trades as possible so u can better find a “middle ground/good variables”?
And with that in mind, if the algo is robust enough to look good in another market, cant u just tinker a bit with optimizing on as much data as possible? The “core of the algo” seems to be working just fine if ur results are looking almost as good in the original market as the new one?Im so effing confused about all this and i cant seem to get a really good answer from all the pro traders ive contacted regarding this.
Best answers so far has been from Kevin Davey, who ive mentioned a couple of times, who replied:
“Thanks for the question. I have never built strategies using the process you describe, so I can;t say if it is good or bad. The only real answer with that is trying them live, and seeing if they work or not. I hope this makes sense.”
And so far my methods seem to have been working live so.. im just hoping it dosnt turn to shit in 1 month you know..
Edit: “In podcast, which I have listend, they talked about robust systems should perform somewhat similar in correlating markets. But I havent heard yet whether you should just use the original system or re-optimise it. Or dont apply it on other markets at all.”
This is some of the shit i really hate. Alot of the podcasts and books talk about how your systems should be looking good/decent on similar markets. But ive also heard the opposite in other podcasts and books: That it dosnt need to work on any other markets. Personally i am the most confident in an algo if it looks good in other markets. And i am very sceptical to anything that just falls apart in similar markets. Like if its 90% winning trades and nice profits in DAX, i dont want it to be 10% winning trades in Wall st…
I also have a thought about how its extremly hard (again, my own experiences im talking about) to find “universal” strategies while using indicators as filters and triggers. It seems that if you want good robust universal strategies you have to work with the higher highs/lower lows/daily high/low so forth. That being said my most profitable strategies have been indicator based, so I guess in my own experience a strategy dosnt have to work in all markets, but i would like to see that it dosnt turn to shit in similar markets.
The more it works in other similar markets, the more confident i am in it.
1 user thanked author for this post.
02/22/2019 at 2:15 AM #92001I have an algo working good on EURUSD (30/15mins) and AUDUSD (30/15mins) with same variables. All equity curve looks very similar so I was confident on that to put them on live. But the result after 3 months was AUDUSD in profit is expected but EURUSD is completely opposite!! :(((
Have no time to check why is it.
My first guess is 100k bar is not enough to tell this system always generate the consistent equity curve.
2nd is unusual volatility due to major breakout.
02/22/2019 at 8:32 AM #92010My first guess is 100k bar is not enough to tell this system always generate the consistent equity curve.
100K bars of 30/15 minutes is not a huge chunk of history to test on but it could also just be a case that you have managed to curve fit to two correlated markets (both have USD involved) and now one has immediately failed to work due to the curve fit. The other probably will too given enough time.
02/22/2019 at 8:44 AM #92011@CKW thats interesting, so far i have only run my algos on the “best market” and disregarded other markets where it looks OK. Would u mind showing pictures of the Equity line in both markets? Just so we can compare.
@Vonasi ur right about the 100K, when i first only had 100K i had a really hard time getting over the fact that 9/10 of my “OK looking algos” looked like shit when i got my hands on 200K bars.My deep inner fear is of course that 200K is also ultimately the same as 100K when thinking about curvefitting and such.
One note tho is that most of the experts and pro traders ive read about and listened to is saying that 10 years, including at least 1 big fat bear market is sufficient to be “enough” data to be able to create something good.
Btw im in the middle of this book: https://www.amazon.com/Algorithmic-Trading-Winning-Strategies-Rationale/dp/1118460146 and i can not recommend it enough. So far it looks like the most scientific book i have read about algo-trading thus far.
02/22/2019 at 9:46 AM #92022Yes 100k bars is the same as 200k bars if you curve fit a strategy! There is no reason why we shouldn’t be developing our ideas on 10k bars and then out of sample test them on a different 10k bars and if that still works a different 10k bars – hang on I just described walk forward testing!
To find one big fat bear market we have to go back a long way and faster time frames with 100k bars or even 200k bars are not going to go back and find this which is why I guess a lot of the big traders and hedge funds trade daily charts at a minimum. To get an historically accurate data feed for a minute chart going back to the last big crash is probably going to mean that we are testing on dirty data. Plus if you throw in volatile and changing spread throughout a day then it gets even more inaccurate.
02/22/2019 at 10:06 AM #92026100K bars of 30/15 minutes is not a huge chunk of history to test on but it could also just be a case that you have managed to curve fit to two correlated markets (both have USD involved) and now one has immediately failed to work due to the curve fit. The other probably will too given enough time.
@Vonasi: Mostly that’s case. I don’t know AUDUSD30 looks slighlty better but i don know how far it can move forward. (maybe going down next month …)
@ckw thats interesting, so far i have only run my algos on the “best market” and disregarded other markets where it looks OK. Would u mind showing pictures of the Equity line in both markets? Just so we can compare.
@jebus89: Sure1 variable is different for 15 mins & 30 mins due to fractal breakout look back n.
02/22/2019 at 10:12 AM #9203202/22/2019 at 10:21 AM #92038Well on 1 hour+ charts on most index’ u can get data from “(pre-)2007” -> 2019 so you can get a big fat bear market from the 2008 crash. At least thats something.
That being said i would have loved to see how my DAX algos would perform during the insane 2000 crash… 3 years of just shit and dax went down like 70% i belive it was..
My biggest problem with daily charts are that pre-2000 data is.. probably not the best data.. Imagine the amount of people trading S&P futures in 2019 vs 1979 on a daily basis..
What data should you include, what should you exclude.. If your algo looks like shit on data from 1970-1999, but then it looks amazing from 2000 -> 2019, how can you interperet that. Is that a good algo? maybe, maybe not.
What about if it only looks amazing on the last 10 years, but everything before that is shit?.. there is no 1 clear answer and the only thing that is 100% sure is that the future will show you the performance..Another thing i dont like when it comes to daily charts is the “few” trades you usually get from the backtest. I would love to see hundreds of trades, not 120… This of course depends on the strategy but you get my point i think…
Thanks for the photos CKW
02/22/2019 at 11:37 AM #92055I agree that anything before the mid 90’s is data from another world. Most recent data is the most relevant data but if it does not contain a crash then its relevance becomes worthless.
In an ideal world we would develop a strategy on a small piece of recent data and then when we extend the back test into the past the further back it goes the worse it performs but is still profitable. Most often we find the opposite which I guess is a sign of curve fitting.
-
AuthorPosts
Find exclusive trading pro-tools on