Over Optimisation or Curve Fitting: What it is and How to Avoid It

Nov 20
10:43

2011

James Wilton

James Wilton

  • Share this article on Facebook
  • Share this article on Twitter
  • Share this article on Linkedin

Creating your own automated trading program (rather than buying a “black box” solution) allows you more flexibility in ensuring the results are appropriate for your needs and not over-optimised to reflect unrealistic returns. It is far better to optimise your system to provide steady and realistic returns than to optimise it to perform exceptionally well in a once off market condition.

mediaimage

The move from system development to real-time forex trading can often leave a novice trader disappointed with his or her trading results.

 

Why does a system that performed so well in a simulated and back-tested environment collapse in a heap when it goes live? So many supposedly great systems (on paper) fail miserably once you put real money behind them. There are two main reasons this occurs,Over Optimisation or Curve Fitting: What it is and How to Avoid It Articles one of which does not affect automated systems. Often traders have problems with their ability to execute a trading plan, due to their inability to control emotions. This is easily overcome by automating your forex day trading system. There is therefore only one remaining major factor affecting automated trading systems: over optimisation.

 

Over optimisation is the process of tuning the results of your back-testing so finely that they are not relevant to future conditions. By fine tuning your results too much, you are unlikely to reproduce the performance as the future market conditions will never be exactly the same as the past. Over-optimisation, also referred to as curve fitting, is trying to find the best possible fit between past market data and your test results. It’s great to test your system in conditions that lead to phenomenal paper based returns. However, this is not going to ensure that your forex trading program is suitable for live trading conditions. Some systems may only perform well in bull or bear markets. Some may do brilliantly well in an up-trend but fail hopelessly in sideways markets. If you test you system in only one type of market you are not being realistic about the returns you could achieve from your automated trading program.

 

Pick different time frames and different market conditions to test your auto trading program. Test over a few weeks, then test over months and years. Pick quiet sideways markets and volatile markets. Then test extreme moves. Look for one off events such as the credit crisis of 2008, the Japanese tsunami or the flash crash last year. These will test the limits of your program. If your forex currency trading system can get through these events unscathed then you are ready to move on to the simulator. The correct amount of optimisation ensures maximum potential profit but allows enough flexibility to handle realistic market conditions.

 

Back-testing is an effective means of testing a given trading system. However, market conditions are never exactly the same. My recommendation is that once you are satisfied with your back testing results; trade your system on a simulator before you apply your auto trading system to live markets. This will allow you to check for over-optimisation and allow you to ensure that the system meets your objectives with live data as well as historical data.

 

Creating your own automated trading program (rather than buying a “black box” solution) allows you more flexibility in ensuring the results are appropriate for your needs and not over-optimised to reflect unrealistic returns. It is far better to optimise your system to provide steady and realistic returns than to optimise it to perform exceptionally well in a once off market condition.

 

While optimisation of your trading system through back-testing will provide you with the most profitable settings for your forex trading software based on the selected date range, there is no guarantee that these settings will be a perfect fit in the future. Market conditions change often, so it is important to regularly re-test your program for best results whilst remaining careful not to over-optimise.

 

Back testing is an extremely useful tool for building your auto trading system but all your hard work can backfire in live conditions if you have not optimised correctly. Avoid over-optimisation to create a consistent and effective forex trading program for yourself.