Trading System: Spot Check and Backtest
Spot Check
Once you’ve completed the task of writing the rules, it’s time for an informal check against some price charts in the market you are going to be trading, just to see whether the ideas you had are properly expressed by the rules, and also to have a good look at whether your system appears profitable.
Backtesting a Trading System
Backtest
Now it is time to convert your rules into computer code for testing. You have several choices for software, and one of the major programs is Metastock, which has many thousands of users, forums, user groups, etc. There are others, and ones like Amibroker include all the facilities and are competitively priced, so I would encourage you to try out some demos and see which you like at the price you can afford. The advantage of a large user base is that you may find lots of assistance and even prewritten routines for setting up your back test.
Now some traders just put together the good advice from experienced coaches, seminars, and books and start trading with it, skipping the back testing process. Certainly this is an easier approach, but back testing has a much more important purpose than just trying to adjust the parameters of any indicators used. It can also take away self-doubt and the urge to extemporize when things aren’t going well.
Back testing is important because whatever criteria you use in your trading, whether it is moving averages, candlesticks, Fibonacci retracements, or something else, you need to eliminate any possible doubt in your mind that it will work. If there is any doubt, then you will lack confidence when the system first encounters a problem, and it will be hard to resist modifying it as you go along.
When you back test you can test your entire system’s performance using historical data. This allows you to adjust the parameters on any indicators or calculations you’re using. You don’t need to obsess about ‘optimizing’ the parameters because it’s certain that future price movements will not be exactly the same as the ones you’re testing on, but you should try to tune it for a good response. Changing a parameter by one or two days should not have any marked effect on the performance, otherwise your trading system is doing something strange, and you need to investigate it.
Of course, the main point of back testing is to prove to yourself that what you have designed will be profitable. Back testing will also give you an idea of the size of drawdown you may expect, that is how much your account can go down with some successive losses, and this can have a significant effect if you’re not expecting it. For instance, you could design a system to double your money every year but the drawdowns may be more than 100%, and obviously this is impractical.
If you have any interest in how your trading system will work, it’s really not sufficient to run it and look at the bottom line of the money made at the end of the period. There are several other aspects that need looking at and balancing against the profit margin so that you know your system better and what to expect when you use it.
You should look carefully at the percentage of wins you get versus the percentage of losses. If you’re winning more than you’re losing, that is great but not necessary to make a profit, as I’ve explained before. You also need to look at the value of your wins against the cost of your losses. These two factors together give you the expected overall percentage profit.
It’s important psychologically to see how many consecutive losses your system can take and still come out on top. Looking through the back test you should be able to see the maximum number of losses in a row from historical data. This number will give you confidence to keep applying your trading system even if you have a run of losses.
A further statistic that you need to check, as mentioned above, is the maximum drawdown. It’s really just a function of how much risk you are taking. If the system sometimes results in a 50% drawdown, you need to ask yourself whether you will be comfortable seeing that, or whether you need to adjust the risk and reward levels so the drawdown is not so harsh.
One thing that is sometimes not considered is how many trades your system requires you to take. If there are too many, then you may find yourself choosing between them and this brings in human emotion again. If you don’t have many trading opportunities, then you may find a lot of your money is sitting around much of the time, and not being well utilized. You can see that this is quite an important statistic, even though there is seldom much made of it.
The computer languages used to create back tests are much simpler than the machine language used for computer programs, but if you feel unable to tackle learning any of them, then with a popular software package you should be able to find programmers or developers who can code your rules for you. You may even find someone who has already done it, or who will do it for free, and the user groups are a good place to get help if you are trying to do it yourself but are stuck on something.
An alternative to programming a computer is to manually back test your system, and this is possible though more long-winded. You may not get such a wealth of data from this test, but you will get a feel for the way your trading system will work, and may develop further ideas in the process.
Join the discussion