How to use multiple symbols in System Tester

 

Hello,

Can someone tell me (if possible) how to use multiple symbols in System Tester? My E.A. sends orders for different symbols, but I can´t test it in S. T. .

For example, if I´m using symbols "EURUSD" e "GBPUSD", if I choose "EURUSD" as main symbol, the OrderSend returns errors for "GBPUSD" (unknown symbol name - OrderSend error 4106) and visa-versa. Is it possible to load/test multiple symbols, i.e. I´m making mistakes, or it´s a MT4 Sys. Tester limitation?

Also, When loading some indicators in MT, appears the error "Memory handler: can´t allocate 124695780 bytes of memory", but MT is using +- 700MB of mem., and in Task Manager, it´s showing that the system has 1.2 GB used out of 3GB of ram, or +- 1.8GB free.

Any help are welcome,

Gero.

 
Gero.Gero wrote >>

Hello,

Can someone tell me (if possible) how to use multiple symbols in System Tester? My E.A. sends orders for different symbols, but I can´t test it in S. T. .

For example, if I´m using symbols "EURUSD" e "GBPUSD", if I choose "EURUSD" as main symbol, the OrderSend returns errors for "GBPUSD" (unknown symbol name - OrderSend error 4106) and visa-versa. Is it possible to load/test multiple symbols, i.e. I´m making mistakes, or it´s a MT4 Sys. Tester limitation?

Also, When loading some indicators in MT, appears the error "Memory handler: can´t allocate 124695780 bytes of memory", but MT is using +- 700MB of mem., and in Task Manager, it´s showing that the system has 1.2 GB used out of 3GB of ram, or +- 1.8GB free.

Any help are welcome,

Gero.

You can only test with one symbol at a time in tester, generally if you have more in your Ea it will only recognize the symbol for the chart to which it is attached.

Multiple currency testing is on everyones wish list.

I suspect that your second problem is due to downloading too much data for a particular pair, I'm by no means sure of this, perhaps someone else could help you.

Keith

 
kminler wrote >>

You can only test with one symbol at a time in tester, generally if you have more in your Ea it will only recognize the symbol for the chart to which it is attached.

Multiple currency testing is on everyones wish list.

I suspect that your second problem is due to downloading too much data for a particular pair, I'm by no means sure of this, perhaps someone else could help you.

Keith

Oh, thanx for your reply, only today I saw your post. Sorry for not posting a response before.

Yes, I think the 2nd problem was due I have downloaded all history data for all symbols, so each time I opened a graph, a lot of memory was used, but the problem is with MT4 itself, because task man. showed I was with a lot of free mem.

But, sorry for not replying before.

Thank you so much,

Gero.

 
Gero.Gero:

Hello,

Can someone tell me (if possible) how to use multiple symbols in System Tester? My E.A. sends orders for different symbols, but I can´t test it in S. T. .

For example, if I´m using symbols "EURUSD" e "GBPUSD", if I choose "EURUSD" as main symbol, the OrderSend returns errors for "GBPUSD" (unknown symbol name - OrderSend error 4106) and visa-versa. Is it possible to load/test multiple symbols, i.e. I´m making mistakes, or it´s a MT4 Sys. Tester limitation?

Also, When loading some indicators in MT, appears the error "Memory handler: can´t allocate 124695780 bytes of memory", but MT is using +- 700MB of mem., and in Task Manager, it´s showing that the system has 1.2 GB used out of 3GB of ram, or +- 1.8GB free.

Any help are welcome,

Gero.

Regarding your 1st question (about the strategy tester), one way (however, far from elegant) to accomplish this is to capture all the data you need for the "other" symbol and write it away to a file, including some way for your EA to identify each record. Then have the EA that you wish to test in the strategy tester read the appropriate records from this file rather than trying to perform MarketInfo() calls on the "other" symbol.


CB

 

Just out of curiosity, and this may be making more of a mess than solving a problem, could an EA on a single chart interact with other charts with other symbols on them, then perform the buys and sells from the EA chart to the other symbol charts and perform all the account processing such as closing trades. Then this EA could be tested in tester on a single pair, that was interacting with other pairs?

Again just curious, my guess is probably not, but gotta ask.

 
cloudbreaker wrote >>

Regarding your 1st question (about the strategy tester), one way (however, far from elegant) to accomplish this is to capture all the data you need for the "other" symbol and write it away to a file, including some way for your EA to identify each record. Then have the EA that you wish to test in the strategy tester read the appropriate records from this file rather than trying to perform MarketInfo() calls on the "other" symbol.

CB

Yes, great idea, I can do this, I already capture data from MT4 with "ArrayCopyRates", as I write my code inside a dll (for speed, in mql4 I took 64 hours to completely test my EA, with some code in dll, I took only 2/3 hours :-) ), the problem arises from OrderXXX, as I can´t test if I can buy/sell etc... :-(, and I think it´s a little complicated to mimics this in my code.

Of course, I can test in a Symbol with the other loaded "behind the scene" and then test the other, etc... but I can´t know how they will behave in the same time, I think you understand me.

[]´s,

Gero.

 
LEHayes wrote >>

Just out of curiosity, and this may be making more of a mess than solving a problem, could an EA on a single chart interact with other charts with other symbols on them, then perform the buys and sells from the EA chart to the other symbol charts and perform all the account processing such as closing trades. Then this EA could be tested in tester on a single pair, that was interacting with other pairs?

Again just curious, my guess is probably not, but gotta ask.

When using in a live (real/demo account) environment, yes, you can. When in system tester, as already told, no, you can´t.

To work with other symbols using OrderXXXX functions all you needs to do is to change the first parameter to the pair you want like : OrderSend( "EUR/USD" ...., OrderSend( "GBP/USD" ... etc...

[]´s,

Gero.