Import Tick Data into mt4
It is true that mt4 natively only supports 1 minute data import, simulates ticks, and stores these ticks in fxt file. Tick Data Suite v2 and TickStory are off-the-shelf solutions. They essentially inject themselves into mt4 so that you can run custom fxt
files, so you store your own tick data and convert it yourself and "import" it via the fxt file.
TDS v1 was comprehensive for its time, but it was tedious because you had to re-run the CSV2FXT script every time you wanted to use updated data. I had several separate terminals to have FXT files in 2 year increments so that I did not have to do the entire database over (just the last year), but it was a chore. v2 streamlined the entire process (compressed tick database + on-the-fly decompression + injection of ticks into fxt + automated update options for tick database + your own); you are lucky now you just check mark 'use tick data' and wait about 40 seconds the first time you use an non-updated symbol and your test begins. There are some additional features like
Same with TickStory, which was free so it was even more tricky to get a consistent setup (to scale across multiple symbols).
Where to get tick data:
Normally you would use DukasCopy** Darwinex to give you a pretty good idea of how it would perform on tick level data. It's free, accurate, large symbol range, and updated with appx 4-6 hour delay from real time. More recently TrueFX has begun releasing their own tick data database, updated monthly.
No one mentioned the tick collector EA (by GeekTrader) which will collect and store ticks in csv format. Mt4 usually will 1/2 the number of ticks it collects if there are 2 or more symbols in the market watch. So for highest accuracy, limit collection to one symbol per terminal (make sure market watch only shows one terminal). Sounds like a lot of work. Much easier if the broker does it on their end, and then allows you to download it later at your convenience.
MT5
has native tick collection on a per-broker basis (broker controls how much history to allow, but the trade-off is that you cannot import your own data into mt5 (you may be able to export mt5 >> mt4 :) and mt5
is not yet as popular.
Side comment: I believe mt5 may eventually become more popular in 2 ways:
1) MQ allows ex4 or mql4
to run emulated within mt5
with 100% compatibility.
2) People very slowly migrate their mql4
code to mql5
** Dukascopy has recently increased their spreads compared to TrueFx or Darwinex. That doesn't mean you cannot use them to test.
What this means is that you should test across 2-3 different "true" DMA pricing providers to see if there is a significant change in entry/exit points. and if the difference has a rational explanation in relation to your strategy.