Best Forex Backtesting Software
Humans always want to know what the future will be. This has been a trait that has passed down over centuries of generations of our existence. That curiosity is and has been expressed in a number of ways. These have included religious dogma, to astrology and astronomy, to now science. One of the smartest things that humans have done is to develop a scientific way of analyzing information, taking knowledge about past activity to predict a probable future based on it. For instance, in a simple example, if you have noticed that it has rained at 2:00 o’clock for the past week, then you can reasonably predict that the following day, there is a high chance that when the clock strikes 2:00 o’clock, there will be rain of some kind, whether a light drizzle or a heavy shower.
The same curiosity to predict future events has extended into other areas of our lives, not just the weather. (And as we know weather predictions nowadays are made with more reliable data produced with the help of satellites and other meteorological instruments, so we can predict things like storms and hurricanes with much more accuracy). As our lives have evolved from hunter gatherer cavemen lives, to agrarian societies, to industrialization and commerce, so has our needs to predict the important factors that determine quality of life. In this day and age, this involves being able to predict how prices will move, as the price of commodities, or even foreign exchange are indicators of the health of economies and play an arguably direct role in the quality of life of human beings across the world who use either these commodities or currencies directly or indirectly.
Of course, this is speaking about these things on a societal scale, however there are also factors that make people wish to be able to predict these things on an individual scale as well. If the first thing that popped into your head after those words were, financial market analysts or traders, then yes you would be correct. The individuals who work directly in the financial world definitely have an interest in how to predict price movements across a variety of instruments like stocks, bonds, forex, commodities and even metals like gold and silver. This is because their jobs are highly dependent on their ability to either take advantage of future price movements to make a profit, or to be able to predict price movements to effectively plan against and prevent loss of value in their investments.
The Forex Predictor
As this article focuses on how this applied to forex experts and traders, then the logical direction is to focus on how this translates to these people. It is well known that the ability of a forex trader to succeed in the business consistently lies on his ability to identify price points or levels in the market where price is most likely to reverse or bounce back from. He must use all this to his advantage in order to make a profit. This is achieved through a combination of various strategies, market pattern formation identification, and a variety of signals that the trader uses to determine these profit points for price movements.
But the question begs, how does a trader know for certain if his strategy will be successful or not if it is the first time that he will be using it? Well, for most traditional forex traders that you encounter and pose this question to them, the answer will be through months of practice. This is where they will tell you that the most fool-proof way to test a strategy is to practice it religiously for a long period of time. They are not wrong, of course. This is the most fool-proof way of finding out if a strategy is profitable or not, but there is also another way. One that may not require the immense effort and time that manual testing actually requires. What we are talking about of course is forex strategy backtesting.
Forex strategy backtesting is one way for forex traders to get ahead by having a much easier way of being able to predict the success rate and efficiency of their strategies before losing money in a real live trading environment.
FX Backtesting – How does it work?
With fx backtesting how it works to help traders is that it simulates the market conditions necessary to test your forex strategy, without actually having to spend the time and effort to do so manually. This is done through fx backtesting software that works alongside your trading platforms like MT4. How does it simulate the market conditions, well each type of fx backtesting software is unique, and has its own way of doing things, but for the most part they do this by using the historical price data of the forex market and applying your created strategy to these environments. This is particularly helpful because it allows a trader to test his strategy during specific past price events like huge price spikes or price tsunamis, so he would now just how strong his strategy is to stand up to these type of major financial events.
Now that being said, there are quite a number of forex backtesting software out there, ranging from free options, to software that a trader can only obtain through payment. If you are thinking about spending money or not, we are certain that you still want to get a proper forex backtesting program that will satisfy your own unique trading needs at the end of the day.
The Best Forex Backtesting Software
Now labelling what is the best forex backtesting software is a matter that is based highly off opinion. And different traders are looking for different things in a software like this that will meet their own unique needs. At the most basic, some traders are looking for free options over those that you have to pay for. For them, they would not see a paid programme as the best forex backtesting software.
The most popular forex backtesting programs are a combination of free options and software that the trader has to purchase to use.
The first forex backtesting software option and by far the most convenient to use is the strategy tester feature that comes with MT4 (Metatrader 4). The feature comes with the standard MT4 download, and so it is completely free, and is already integrated into the platform itself. For most people, they consider it more suitable to automated trading, instead of manual trading.
The steps to use this ‘Tester’ feature are as followed:
- Download and install MT4 (if you haven’t already done so).
- Open the Main Menu, then go to View, then Strategy Tester.
- You may also go to Strategy Tester, by using the Strategy Tester button in the standard toolbar, or press CTRL + R.
Upon first opening the Tester window, only two tab options will appear: Settings and Journal. As the trader takes actions within the platform, then more tabs will appear. These extra tabs will give the trader several abilities, like being able to see the results of the trade strategy when tested on historical price data, graphs, and a detailed report of how the strategy performed. There are also optimization options which allow the trader to tweak his trading robot (automated trading software) in order to obtain the best profitability in its performance.
The second popular forex strategy backtesting option available is a software called Forex Tester. There are multiple versions of this software, and it is the trader’s choice which version he finds best suited to him. Unlike the Metatrader 4 Tester, this software is not a free option. Also unlike Metatrader 4, this option can also be used for manual trading as well as automated trading.
Unlike many other backtesting software, Forex Tester provides the trader with preformed strategies. The program comes with 10 manual strategies and 5 EAs (automated trading robots), as well as 16 years of historical price data and a risk calculation and money management table to help the trader to develop a successful money management strategy. With their money back guarantee, this is an attractive option for those who are seeking the extra features and are willing to pay for it.
There are of course many other software options available, but there is a reason why these are the most popular ones among forex traders. They are the most available tools out there, and many traders are satisfied with the results that they get from them, Forex Tester for manual options and Metatrader 4 Tester for automated options. For those of you who wish to check out the options then you can do your research on the following and make your own decision of which would be most suited to your needs:
For manual trading:
You would notice that I also included Metatrader in the manual option, while stating before that this is more suited for automated trading. That is the truth, however traders have used it for manual trading as well, but only by scrolling bar by bar, and noting how your strategy works bar by bar and analysing the data in Microsoft Excel. This is the same for TradingView.
For automated trading:
Metatrader 5 is another Metatrader option that a trader can use and for many traders who solely use automated trading tools. The layout is a bit different than Metatrader 4 and some traders report glitches with the MT5, but of course each trader’s experience is unique and it is worth checking out.
Vigilance is Key
As with every aspect of trading, being thorough is essential with using any type of forex backtesting software, particularly with manual systems. It is recommended that alongside viewing the reports generated by these software, that they track their own results by noting the information for their systems in excel for the data to be analysed at a later time. This is done so that helpful statistics about the performance of the strategy can be created at a later date for the benefit of the trader.
Best forex backtesting software
In order to find the best way to backtest a stock trading strategy, you need to first know what a backtester is and does.
Backtesting a strategy is a simple concept.
Step 1: Identify situation and retrieve similar cases from history
Take an economic event or a sudden shift in price or volatility and compare it to a number of similar situations in the past.
Step 2: Creating/running a strategy
Run your trade strategy through all these situations in the past while manipulating several variables. These variables include when to enter the market, first and second profit targets, stop loss and risk/reward ratio etc.
Step 3: Optimization
- Optimization refers to letting the computer calculate the best combination of the above mentioned variables into a function.
- Optimizing your backtests can be lead to overconfidence because the best combination of inputs for past situations doesn’t necessarily mean that it will profit in real trading.
Side note - Overfitting: A problem that can occur with AI is overfitting. Overfitting represents a model that correlates too closely with a particular set of data and it contains more parameters than can be justified by the data itself. Machine learning or AI tends to try to maximize its results on a set of data and ignores the suitability for future data.
- It’s important to be mindful of the possibility of overfitting when you are running a backtest.
- Gather more data, if you fit a model to twenty past situations, it is much more likely to predict the situation in the future.
- Use Ensemble methods: you can use ensembling methods to consult and average several different models as it’s much more likely to produce optimal results for real trading.
- Keep the model simple: If you try to fulfill too many parameters, the model will have too much capacity and overfitting can be a real problem.
Step 4: How to actually backtest
- Now that you understand the concept of backtesting and optimization, I will demonstrate a few ways of backtesting.
Tradestation : These only work with price-driven trade ideas (if five consecutive green candles, then it will trigger a backtest). You basically pattern your system to recognize certain shifts in price or volatility and it will create a model that tries to adapt to similar situations in the future.
Building your own backtester: You can start from scratch and build your own backtester by various coding languages like Python or C++. It is not easy to build your own backtester because of various biases and how difficult it is to build an adequate model. Here is a website that explains more on how to build back testers.
Disclaimer: I am the CEO of Actionable, Real-Time Trading Insights - BetterTrader.co , an analysis company that focuses on providing real-time trade ideas for day traders. I will try to be as objective as possible in my answer and provide you with my best knowledge.
Bettertrader : This is a tool that is built for backtesting news events and price-driven movements like for example oil moving up 3%. The advantage of using bettertrader is that a pre-existing model is built already for you and it only suggests statistically accurate trade-ideas to avoid bias.
In conclusion, backtesting is crucial for traders to gauge their strategy against historical situations before they engage in real trading with their strategy. One should be aware of when a model overfits its dataset by concentrating too heavily on a simple dataset. It’s necessary to be aware of how a model based on historical data might not predict a similar situation in real trading. While utilizing this tool, one should also combine several models to best represent the function that possibly represents future events in the market.
BetterTrader.co - Real-time statistically backtested analysis for economic events and market movements.
promoted by Capshare
Instead of telling you the best tool or process that you can use for backtesting, let me instead focus on the biggest mistakes that you need to avoid in order to do a reliable backtest.
These are some of the most important factors that you need to keep in mind when backtesting stock trading strategies -
- Data overfitting: This is, by far, the biggest mistake most people make in the pursuit of creating a strategy that gives spectacular backtested results. When creating the strategy, if you start tweaking your parameters in a way that maximizes returns, then that strategy will most likely fail miserably in live conditions. There are 2 ways to overcome this - out-of-sample testing and creating strategies based on logic rather than by tweaking input parameters.
- Forward looking bias: This happens when you use data to generate signals that would otherwise not have been available at that point in time in the past. For instance, if a company’s financial year end is March and you use their earnings data for the previous year on April 1, it is very likely that the company would not have announced that data before May or June. That would result in a forward looking bias.
- Survivorship bias: This is one of those hard to notice mistakes. Let’s say you have a strategy that trades from a list of 500 small cap stocks based on some technical indicators. Chances are that if you try to get hold of 10-year historical price data for these 500 stocks for your backtesting, you will not include the data for all those stocks that were delisted in that 10-year period. When you test your strategy, you would not account for possible trades that would have been generated on any of those “bad” stocks if you had actually executed this strategy during that period.
- Purely focusing on returns: There are number of parameters that you need to consider for judging the quality of a strategy. Purely focusing on returns can lead to come major issues. For instance, if Strategy A gives 10% returns over a certain period with a maximum drawdown of -2%, and strategy B gives 12% returns with a drawdown of -10%, then B is clearly not a superior strategy to A. There are other important parameters such as drawdown, success rate, sharpe ratio, etc.
- Market impact, transaction charges: When looking at the feasibility of a strategy, it is very important to consider the possible market impact of the trade and also the transaction charges incurred. You might be tempted to create a strategy that buys/sells large volumes of some low liquidity stocks that tend to give exceptional returns. But when you go into the market to execute this strategy, a large order on an illiquid stock will move the price which you wouldn’t have factored in your testing. Also, transaction costs can also alter the returns substantially so you should always look at net profits.
- Data mining: This is pretty similar to the data overfitting problem. “If you torture the data long enough, it will confess to anything.” This a common joke among data scientists who believe that, if you spend enough time, you can find a pattern in almost any set of data! That doesn’t necessarily mean that this pattern will be valid in the future.
- Fundamentals change: It could very well happen that you find a strategy that performs exceptionally well on past data. But a fundamental change in market dynamics might make that same strategy fail in the future. It is well known that almost any good strategy needs to keep evolving with changing market conditions.
- Small time frame: It is crucial to test the strategy over a sufficiently long period of time and in changing market conditions. This is especially true for stock trading strategies that may perform exceptionally well in a bull market but would wipe out your bank account in a sideways or bear market.
There are many other things to consider when backtesting. But eventually, the only way to ensure that a strategy works in live conditions is to “test it in live conditions”.
(Disclaimer: I am the co-founder of Tauro Wealth. The views presented here are solely my personal opinions and are for information purposes only.)
Tauro Wealth is a financial technology company ( Tauro Wealth ) that is looking to solve the problems faced by retail investors in India. We hope to provide comprehensive long-term investment solutions at a fraction of traditional costs.