ASCII import into mt4?

Is there a way to import ascii data into mt4 to use mt4 indicators for markets not supplied by the sponsoring broker?

Yes I believe there is a way of doing this. It is a bit complicated, but quite possible.
In order to get the correct format you should go to the History center in MT4 and export one of the regular files in csv format. Then make sure that your data has the same format (order of columns etc.)
Then you need to create a data series for a symbol that your MT4 broker does offer, but not a regular MT4 timeframe, such as D2 (meaning two days, not a regular timeframe).
Then you import the data into that timeframe using the History center. Make sure your timestamps are correct … MT4 uses the open time for each bar as a timestamp.
And finally you open an offline chart … and there is your data!
Not a simple process, but it is possible. I hope this helps.

Thanks David
When I open mt4 data in excel, there are 7 cols: date in, time in hh:mm, o,h,l,cl, vol. When I convert my data to this format in excel and save it with name EPD2, data does not appear in history center. I have attached orig .csv file and modified .csv. Any help would be appreciatedEP##1 1 Day.csv (42.0 KB)
EPD2.csv (38.0 KB)

Hi Stuart. The csv file looks good except that I would change all the times from 16:15 to 00:00 because MT4 uses the open time of the bar, and 16:15 is probably the closing time of the bar.
Then you need to create an offline chart. You can find some indicators to do this, such as described in this forum post:
An offline chart has to be created by an indicator because there are no tools for doing this manually. Use any of the symbols that you have in MT4, create an offline chart, and then go to the History center and delete all the data, then import your data.
I must warn you that the Hurst cycles indicators don’t always work with offline charts because of their reliance on time, and MT4’s ability to tell them the duration of each bar, and where the gaps are. MT4 isn’t that good at doing that with offline charts. But we are working on it …

Thanks again David
I’ll work on it. Since mt4 is primarily a forex platform, sesson opening at 0:00 is fine. The problem is that most of the major futures markets are CME based and daily sessions never start at 0:00. Its not a problem if you are trading with a broker using the mt4 timestamps but the gold standard of data providers eg. CQG and DTN use exchange based timestamps.
This especially is problematic if one uses other indicators in another platform. I personally use CQG and Multicharts and so my bars on any given timeframe are different than the mt4 bars. And so therefore the flds and vtl will also differ slightly. The Hurst plugin is superb. I only wish that mt4 equalled its quality but it falls far short imho.

Hi Stuart. Yes MT4 has its drawbacks, but I’ve come to enjoy it. We do have a Multicharts version of the indicators on the list … a bit far down the list at the moment, but if there is strong interest we will move it up.

Hi Stuart!

There is something about imported data that the Hurst indicator doesn’t like. I’ve been fighting with it for a few days now and can’t seem to isolate the problem. I quickly discovered and corrected the timestamp issue early on and was able to import decades worth of daily, weekly, and monthly data into the history. All of the built-in MT4 indicators work just fine but the Hurst indicator only seems to work properly on the data from the MT4 server. I opened a Darwinex demo account for purposes of testing the Hurst indicator but the data available on the demo server is limited. However, there is sufficient intraday data for proper evaluation of the shorter, built-in nominal model. With a little ingenuity you can probably figure out how to create a custom nominal model like I did.


Thanks for the input William

The exercise is pointless if the Hurst indicators don’t work on the imported data. FYI I have a demo acct with FXPRO (gave them a non US address) and they seem to have everything needed except bonds and t notes.



I opened an account with FXPRO. I imported ES futures data back to 1999. The Hurst indicator seemed to read it with no problem. I noticed a couple of things. Make sure your monthly, weekly, and daily data have the same starting date. Also when you are doing an initial analysis make sure your chart is zoomed all the way out. I don’t know why I had problems with Darwinex. I’ll let the ST people figure it out.


That’s fantastic. Can you please detail the steps that use used to import the data, ie convert .csv or .txt file to mt4 .hst. format.


I looked at your daily data file (epd2.csv) and it looks fine except the time column. As David suggested it must be in the 00:00 format. I don’t know if this makes any difference but I used non-back adjusted continuous contract data. MT4 does not appear to build longer sampling periods from shorter period historical data. Therefore you must import both weekly data and monthly data separately. Monthly data uses the first of the month as the date stamp. Weekly data uses Sunday midnight as it’s timestamp. To convert from Friday to Sunday just subtract 5 from the CQG timestamp. Also make sure your daily, weekly, and monthly data is all the same length ( i.e. all of my data begins September 1997). Hope this helps.


Hi Stuart and William. I hope that your ASCII importing is going well. If the HC indicators don’t like the data then send it through to us and we can test it and see why. I am also surprised that you need monthly, weekly and daily data to go back to the same date. That shouldn’t be the case with the HC indicator which simply reads the data available. Maybe something in the data is preventing MT4 from correctly reporting the date range?

Hi David.

The data importing for FXPRO went fine. The reason I use the same amount of monthly, weekly, and daily data is so that the shortest daily wave will be calculated over the same time period as the longest monthly wave. MT4 does not seem to build longer sampling periods from shorter sampling periods with respect to imported historical data.

Apologies for necroing an old thread but I’m curious if you guys ever got this process to work properly.

I’ve tried every trick mentioned here and my data import appears to be correct. The charts are nearly perfect. However, whenever I add the Hurst cycle indicator to the monthly chart (or the others), I get a label that says "Beginning analysis with the MN chart.’ It seems to hang there no matter how long I wait.



Hi Greg,

In prior post you stated that you only imported monthly data. I got mine to work by importing the same amount of daily, weekly, and monthly data since MT4 does not build larger sampling periods from smaller periods with respect to imported data. You might try that.


Hi Greg, at the monthly level that is not very much data so the analysis should not take long at all. There is probably something strange in the data. Have you cleared any analysis for that instrument? If you want to upload the monthly file here I can take a look at it and see what is causing the problem. Or you could email it to support, they will probably be quicker than me :slight_smile:

SPX Monthly.csv (33.1 KB)
SPX Weekly.csv (143.7 KB)
SPX Daily.csv (778.5 KB)

I’ll go ahead and upload them here in hopes that it may help someone else too.

These all start in Jan 1970. When they are imported into MT4, they look fine. Only when I apply the Hurst Cycles tool does it “lock up” analyzing.

Any feedback is appreciated.


Hi Greg could you upload the MT4 files please so that I can see what is happening in MT4? They are the .hst files that you will find by using the menu in MT4 File>Show Data Folder, then the history folder, and the server name folder. The monthly file will have 43200.hst at the end.

S&P500240.hst (120.1 KB)
S&P50010080.hst (143.9 KB)
S&P5001440.hst (695.1 KB)


Here you go. Thanks for talking a look into this.



I think I have this resolved. For some reason, My problem was either:

  1. I didn’t have the chart zoomed all of the way out. (as mentioned above)


  1. I did some funky Import/Export/Re-import maneuver

Thanks for your time.