The Importance of Testing with Tick Data

Before I go on to further testing, I just want to do a short write up on the importance of knowing what your data represents and ensuring that it is good.

Using MT4 as an example, a normal Strategy Tester run using the standard historical data will give you 90% modelling quality. 90% sounds good – in a modern world, scoring a 90% on a quiz means you get an A+ – but MT4 testing does NOT work that way.

One important thing to know about the standard data you download from MT4 is that it is using interpolated data. What this means is (broadly speaking):

MT4 takes 4 price points – bar open, bar high, bar low, bar close – and then – for lack of a better team – estimate how prices move based on these 4 price points. If you have ever plotted points on a graph and try to draw the “best fit” curve to fit those points, you know what MT4 is kind of doing with the data.

The problem is, of course, prices do not move in a predictable “best-fit” manner that can be estimated with a software. Real price movement can be very hectic even within a single bar. If you use interpolated data in your testing, you are effectively using estimated, “predictable” prices to gauge if a strategy will work or not, instead of using real price tick data. Most strategies perform better when prices are more predictable; and do much worse when using more realistic prices.

To illustrate with an example, I ran a quick backtest with the Bolinger Band Strategy from my last post [ http://asimovanalytics.com/2020/11/prelim-test-bollinger-band-strategy/ ] but using the default MT4 data.

(sorry for the small text – but you can see the equity curves in these examples)

The results? Well, it sucked, but not too much. We’re almost back at breakeven. The curve is actually pretty smooth after the series of losses in the middle – you can imagine that we will be turning a profit in about a couple more trades.

Next, we do the same test, same period, same settings, but now with proper tick data with variable spread and slippage factored in:

AND IT TOTALLY BOMBED.

Now imagine if you were to do your backtests using the default data instead of tick data, took a strategy that looks good on that, and went on to trade real money with it. I think you understand the risk involved at this time.

The next question is, how do we get proper Tick Data?

If you are keen, I would recommend Tick Data Suite from [https://eareview.net/tick-data-suite]

They have quite a number of good things going: they offer data from various sources; including Dukascopy tick data which is generally considered the gold standard. If you prefer data sources from elsewhere, you can get data from FXCM as well, amongst others. You can see from the screenshot above that it also lists all the data you downloaded in a nice, neat list, making it easier to manage than even MT4’s own interface.

Once installed – it automatically and seamlessly integrates with MT4, so no headaches on that end.

As you can see, the “Spread” option – instead of having you choose a fixed number now becomes “Variable” – to reflect the spreads more accurately according to what actually happened in the markets.

There’s also a selection of additional settings, but the most important one, I feel, is the ability to factor “Slippage” into your backtests. As you can see below – the slippage settings I use is pretty crude – there’s a 20% chance I will get 10 points in my favour, and a 80% chance I will get 30 points against me – each simply evens out to an additional 2 pips lost per trade.

It is basic, but it’s just the one I use. There are more sophisticated options to simulate slippage as well.

Basically – I find it a great tool to use, and a must-have if you are planning to automate your trading using MT4. The price point is quite reasonable a swell, a $97 upfront payment with a $10 monthly subscription.

You can find Tick Data Suite here:

https://eareview.net/tick-data-suite

Leave a Reply

Your email address will not be published. Required fields are marked *