New article: Testing trading strategies on real ticks

 

New article Testing trading strategies on real ticks has been published:

The article provides the results of testing a simple trading strategy in three modes: "1 minute OHLC", "Every tick" and "Every tick based on real ticks" using actual historical data.

Test reports of various modeling modes are displayed below as animated GIF images allowing you to compare the parameters.

Author: MetaQuotes Software Corp.

 

Intraday trading strategies require real tick modeling so that you can see how it would perform accurately on real data intrabar (instead of waiting for the bar to close....a lot can happen intrabar, even 1 min intrabar).  The unfortunate tradeoff is how much time it takes to process real ticks vs made up ticks.

There are 2 ways to compromise:

1) increase timeframe from ticks to millisecond or seconds bars.  But mt4/mt5 does not support millisecond or seconds bar import.  The lowest timeframe is 1 minute.  You would have to do this at the FXT level and convert the ticks into a higher timeframe.  Using every 400-500 millisecond bars give a very good snapshot of what happens sub-minute but with less processing.  Only HFTs and UHFTs really need tick processing.  But because there is no seconds or milliseconds bars native support in mt4/mt5, we are stuck jumping from 1min OHLC to tick level granularity.

Interactive Brokers provide 400ms backfill time vs ticks for lots of instruments.  Since it seems that mt5 is embracing IB via oneZero bridge, it might make sense to allow millisecond bar processing or conversion to create FXT for testing.

2) skip every x ticks when processing backtest.  The test will not be as accurate as processing every tick, but similar to milliseconds/seconds timeframes, it may provide a way to compromise between "speed vs accurate enough"

edit:  the full article does admit this: 

Accuracy vs Speed

As I said earlier, depends largely on the strategy.  Nearly any intraday strategy will require ticks or at least sub-minute data.  It is a shame mt4/mt5 do not support seconds or millisecond bars (at least seconds), even though charting platforms like MultiCharts have been doing this for several years now.

Reason: