A key area of system development in forex trading is the back-test. The process of backtesting is done by writing a trading system into code. The code is then compared against past price data to see if a desired result is achieved. You can undertake this by eye, but the problems with that are two fold: a) It takes FOREVER. b) The eye only looks for what it wants to see (you’ll probably miss losing trades). This is why I leave it to the software. The process is not a magic bullet. It will, however, let you know if you are on the right track. I value it highly and, in practice, will not trade a system that does not backtest well. Backtesting will bode well for you, so long as you follow some rules.
Look for overall trends for each pair in the time frame in which the system is to be tested. It is good idea to backtest over a long time frame that includes different trends for your chosen currency pairs. Also, I test over staggered starts to see how much the results vary. This process is referred to as “monte-carlo” testing. These practices will give you an indication if your system trades well over all conditions, ranging trends or bullish/bearish trends.
Beware also of “curve fitting” or “data mining”. This practice involves highly tuning your system for a past data set to the extent they are no longer viable in the future. You should not use backtesting by itself to find trading profits. Just devise a system based on solid principles and see if it works. If it does then you make look to “optimize”, but only slightly.
Backtesting software usually caters for a number of variables you can pre-program. Things customizable in the interface usually include time-frame tested, leverage available, commissions paid and basic stop losses. With more powerful software things like optimization, automatic position sizing and other more-advanced functions become available. The interface of backtesting software will also give you a great number of statistics. Those I value most highly with my own trading style are:
- Win/Loss ratio. This is pretty much self explainitory. My current system focuses on this ratio as the primary means of profit.
- Drawdown percentage. This is the amount the system lost from “peak to trough” expressed in both percentage terms. In practice you should not take much more heat than what your system tested at. Any percentage loss greater than what your system tested at is indicative of a compromised system.
- Annual return percentage. Self explainitory. Useful for triggering salivating or weeping.
- Sharpe ratio. Very useful. Determines whether a system has consistent good return potential. >1 is good, >2 is very good, >3 is superb.
Some other stats include:
- Net Profit / Loss percentage. Shows the effect of compounding when compared to annual return percentage. (Drool) – Percentage average gain/loss. Very important when trading “let winners run, cut losers short” systems.
- Average bars held. Good when working out interest accumulation. Also when paying commissions, a longer trade is better than shorter with comparable percentage results.
- Exposure/percentage of capital invested (or exposed to the market). You should never need this trading forex properly with the leverage available today. Implies under-capitalisation in other trading mediums though.
You probably have heard the caveat “Past performance is not indicative of future results” quite often. This is very true of backtesting. You must always perform the due diligence of testing your system in real time either through paper trading or a demo account. If the system trades within the parameters of what the backtests indicated then your most likely on a winner.
One of the most important aspects of system development in forex trading is back-testing. When its done right, it can help you improve your systems, find flaws and give you confidence that you are on the right track. As with anything in forex trading though, back-testing by itself can only take you so far towards trading success. It is just part of creating a profitable system.
Related posts: