One of the biggest problems of Eas is the over-optimization of parameters… Why?
Because it causes the backtest curve to look nice, but the results in reality are not good.
This article explains three of the methods that traders can use to solve the over optimization problem with EAs and automated trading systems.
First of all, testing an EA is easier when using less parameters. Of course, the most important part is that the system rules offer a decent expected profitability in the long run. But if you can make the system simpler while keeping the results more or less equal, then always choose the simpler approach.
If the simpler approach is less substantially less profitable, then of course the more complex system rules should be prioritized and used.
Using less parameters makes it easier to test an EA. The LOA EA is an example of simple EA that works well with more than 10+ years of back-testing. The LOA.EA trades the breakout during the first hours of the London Open with simple logic for the break.
Over optimizing can offer traders a good backtest curve. One of the methods to check if the parameters are not over optimized is by using only a part of the history (60 to 70%) to obtain them.
Let’s review how our programmer Carlos Cordero checked for the over optimization with the LOA.EA. With this EA, we have a history of one decade (2010 to 2020):
And then we draw conclusions:
With LOA.EA, the set of parameters obtained until 2016 is identical to that obtained until 2020, so if we had opened a real account in 2016 we would have obtained exactly the same results that the backtest shows until today.
Mislav mentioned the following with his EAs: “my systems are built in a logical way relying on price swings, Fibonacci, and moving averages. Actually, I never got any better long term results with any optimization.”
With this EA’s he tested an impressive number of candles well:
Testing the trading system on other currency crosses and/or financial instruments is also a very important step. This helps reveal to see how sustainable the system really is. All EAs we trade with work well on multiple pairs.
That said, it is OK if the performance of one pair outshines the performance on other pairs. The key point is to make sure that the other pairs do not show disastrous results.
Last but not least, a key factor is also back-testing the system with 99.9% tick data and variable spread.
Apart from this method, others are applied to avoid over-optimization, but we leave this for another day :))
Curious to know more?
Make sure to join our two live trading webinars:
Thank you and good trading,
& ECS team