You can get good forex data from dukascopy by signing into their JForex platform.
It'll download in csv, so then the challenge is to convert it to hst and fxt files that mt4 can read.
There's a way to do this by looking up 'eareview' online, A guy called Birt explains how to do it with a tutorial and provides you with the codes to change the type of the data.
Thats how I get data for my algo's. 99% modelling quality is incredibly useful