Recently, I've been receiving a lot of question on how I do my backtesting, so I decided I will write a detailed post to answer these questions.
For the past 3 years of studying trading, I've done a lot of backtesting and forward testing. I went through the tedious process of scrolling back to previous data and endlessly pressing the 'next candle' button as I look for my set up. It was hard, a few keyboard keys have given up, a countless cup of coffee (or bottles of wine) and my eyesight slowly deteriorating, suffering from prolonged starring at the monitor. It is definitely hard work, but I am glad I've done it, and I will continue doing it.
Backtesting is vital to see if your system actually works if you already have one. It is essential if you don't have a system yet because it'll help you develop one.
This is my version of backtesting, I hope you find it useful.
Your style, objectives and data collection will differ if you already have a system compared to if you are still discovering a system of your own. For this post, I will focus on how to test an existing system.
1. SET AN OBJECTIVE. Do you want to test the WIN rate ratio? Do you want to know the variation of return using several risk exposure? Do you want to see how this system react to a particular instrument? Your objective will set the direction of your test and dictate what data you need to collect. When I started backtesting one strategy that I use in PSE on Forex pairs, all I wanted to know is - is this set up applicable to Forex too and if so, what is the WIN rate.
2. ONE AT A TIME. Focus on one system or one pair or one objective at a time. You cannot have a detailed and practical result if you mix it all up. Having a focus on ONE at a time will also give you a more in-depth effect on a system, instrument or objective.
3. WRITE DOWN the entry and exit rule of your system, make a checklist that you will tick every time you enter a test trade. Write it down and stick to it! It is easy to go back another candle and change your mind when you backtest, do your best to stick to the same discipline as if you are trading real, coz how you handle your trades when backtesting reflects how you trade on live accounts.
4. COLLECT the necessary data. This is at your discretion - are you an excel guy/gal or are you more on chart snap guy/gal. If I am concern only with the WIN rate, excel is enough, but if I want to refine the system, then I will have both. Again, go back to your objective. Whatever form you prefer, you must collect it. It will make it easier for you to go back and review it later. It is good to have for when you want to go back to the same data and apply it to different objectives, it will save you tons of time. And keep it safe and always create a backup! I once lost tons of data when my external hard drive malfunctioned. Such is life. :(
5. ANALYZE. Once you have the necessary information, analyze it, did it meet your objective? Did you get the result you're looking for? If not, do it again. If it did, create action items for your next step, whether it is to refine the system or forward test it.
I manually backtest my system, that is going through candlestick by candlestick, it helps me have a feel of the move of the instrument/system that I am testing. Also, because my system is discretionary base on price action.
A critical aspect of this backtesting process is the tool you use. For PSE, I recommend Amibroker, they have an excellent interface for backtesting. You can go back to a specific date, it will hide the candles after that date, which is good because you will be able to analyze each move without compromising your decision-making process because of hindsight. You can also go back to a specific date on Investagram, but they don't have the functionality of hiding the proceeding candles. Personally, Amibroker is my go-to backtesting and charting software pair with the good old Excel.
For Forex, I made an investment and purchased software, it is fantastic! Not only you can fully customize your charts for backtesting it also collects the data for you, it also save each chart in your project, making it easy to go back and review. It saves me so much time, and the interface is excellent, check out this link if you want to give it a go - FOREX TESTER. If you decide to purchase the software through this link, I will be getting a commission as an affiliate. But honestly tho it is impressive, they have a free demo version go on try it and see for yourself. If you don't want to spend extra for a software, MT4 can also do the job just fine with its F12 function.
That's all my darlings, I am off. Let me know if you have any question, I hope this helps. Next time I'll try to cover the process on how to develop a system through backtesting.