Any idea hot to add a delay in tester autoconfiguration

 
When running tester in auto configuration mode, tester starts very quickly and even the account is not activated yet. It takes few seconds for an account to activate in the mean time tester has already performed some testing which generate in valid results. Does any one has idea how to add the delay in tester. Or does any one know why the results of tester using manual (starting the tester manually) is different than the ones which are obtained using auto config for the tester. Please help. Thanks.
 
Can any one help with this issue please...
 

I have the same issue/query.

Anyone have any ideas on how to get the tester to delay its startup until after the login credentials have been validated? (when tester is started by way of command line)

The issue I have is that the tester will compile an fxt file before the hst data has been updated (doesn't update until the account has logged into the server). Thus the history file used for the backtest is outdated from the outset of the backtesting session.

 
If you are using an automated solution (as I remember u mentioned in the past), then have the control EA copy the updated hst file to the history folder of the tested EA prior to launching the Tester.
 

Hi Gordon, yep it is fully automated, I've thought about the possibility of copying the hst file but the question is where to get the up-to-date hst file? MT4 doesn't commit the history data to the hst file until the MT4 terminal closes, until then it is all memory resident.

So I'd need to open a terminal, have it stay open for some indeterminant period of time such that all the hst files were updated, have the terminal close, then copy the hst files to where I need them (or reopen the terminal yet again to start the backtest).

It seems like an odd flaw, launch the terminal to do a backtest but don't let the tester have the chance to acquire and use any recent price data.

 
1005phillip:

[...] MT4 doesn't commit the history data to the hst file until the MT4 terminal closes, until then it is all memory resident.

Ya, I forgot to mention that in my own system the HST's are actually updated via code (they are not kept in the history folder)... Then the automated system copies the updated HST to the target testing Terminal before it's launched. HST file structure is known so it's pretty easy to implement.
 

gordon, I'm assuming it's something that would be straight-forward to implement by way of just modifying the existing Period Converter script, does this seem like a reasonable starting point?

 
1005phillip:

gordon, I'm assuming it's something that would be straight-forward to implement by way of just modifying the existing Period Converter script, does this seem like a reasonable starting point?

Yes.
 

Hi gordon, I think I may have a workable solution as you outlined by way of making some minor adaptions to some existing period converter code I have.

One question I have is based on the differences, if any, between accessing data by way of Open[] versus iOpen().

From my experience working with charts I gather that when the Open[] function is called the data returned is data which is currently only resident in memory (ram) and is not data queried from or pulled out of the hst file as currently existing on the hard-drive.

What about iOpen()? Does it access historical data that is currently memory-resident or does it bypass the memory-resident data that has yet to be committed to disk and instead it opens and reads the hst data from the file on the hard-drive?

I know I can code and verify, but figured I'd ask just in case there was an obvious answer akready out there.

 

1005phillip:

[...] What about iOpen()? Does it access historical data that is currently memory-resident or does it bypass the memory-resident data that has yet to be committed to disk and instead it opens and reads the hst data from the file on the hard-drive?

Open[] almost surly uses memory, since a chart must be open to use it (the chart that the script/expert is attached to). I am not sure about iOpen[], I imagine if the specific chart is open then it's from memory and if not then it's from disk. There's also the question of how 'max bars in chart' setting (in the options) affects this... Ya, you should verify this, I am not sure.
 

iOpen() will trigger an updating of the history from the server, but it will always return immediately and return invalid data until history is fully loaded. After it is fully loaded iOpen() will serve the data from memory and continually update the memory, it will act like if you had just opened an invisible chart (very similar to an iCustom() call).

Reason: