limitation of available datas

 

Hi,

I grab data from mql5 for training a neural network written in python script. First I store input and output data in two separates .csv files and then I reopen them with the python script to train my model.

I discovered there is a limitation on available datas that CopyClose,CopyOpen,CopySpread,CopyHigh,CopyLow,CopyTockVolume can return.

This limitation is about 3 months, and of course, my neural net need more datas. I used 1minutes period so it's a huge number of data(approx. 75'000 array length for each open,high,low etc..), but more is needed.

I contacted the broker (XM.co.uk) who said they can't help me, I also tried to reinstall the interface from metatrader but the limitation of 3 months is the same.

Does it exist a way to get more data(open high low close spread tickvolume and eventually technical indicators, with 1min period) with mql5? 2 or 3 years should be perfect


Best regards,

Simon

 
happylulux:

This limitation is about 3 months, and of course, my neural net need more datas. I used 1minutes period so it's a huge number of data(approx. 75'000 array length for each open,high,low etc..), but more is needed.

Per the documentation for CopyTime(), CopyHigh(), CopyLow(), etc.

When requesting data from the indicator, if requested timeseries are not yet built or they need to be downloaded from the server, the function will immediately return -1, but the process of downloading/building will be initiated.

When requesting data from an Expert Advisor or script, downloading from the server will be initiated, if  the terminal does not have these data locally, or building of a required timeseries will start, if data can be built from the local history but they are not ready yet. The function will return the amount of data that will be ready by the moment of timeout expiration, but history downloading will continue, and at the next similar request the function will return more data.

So your code has to detect when -1 is given, then continue downloading during the next cycle(s) when the function no longer returns -1. By next cycle I mean OnTick() for an EA or OnCalculate() for an indicator.

You can also try pre-loading the data. Go to the Symbols window (CTRL-U). Hit Bars. Choose M1. Specify a date range. Do this a couple of times, i.e. hit the Request button a few times. Within four clicks I got data to year 2002, which is better than 3-months.

Reason: