[Build 112] No strategy can be tested on the MT4

All attached strategies are not traded in the Metatrader's strategy tester.
 Why not? How can I be so sure that the EA is working?

I am aware that these are multiframe strategies and the strategy tester does not support this, but nevertheless the EA should act within its timeframe?!


The attached strategies are only examples. I have more.
Attachments
201810120181012018923Strategy 1121275.ex4
(290.88 KiB)
20181012018923Strategy 3104392.sqx
(800.82 KiB)
20181012018923Strategy 3104392.str
(912.51 KiB)
201810120181012018923Strategy 3104392.ex4
(295.50 KiB)
20181012018923Strategy 1121275.str
(354.24 KiB)
201810120181012018923Strategy 1121275.mq4
(194.32 KiB)
201810120181012018923Strategy 3104392.mq4
(195.45 KiB)
20181012018923Strategy 1121275.sqx
(320.57 KiB)
  • Votes +5
  • Project StrategyQuant X
  • Type Bug
  • Status Refused
  • Priority Normal

History

r
#1

Marcel

04.10.2018 20:11

Task created

MF
#2

Mark Fric

05.10.2018 08:30

Status changed from New to Refused

you simply cannot test multi timeframe strategies in MT4 Strategy Tester. This is  a limitation of MetaTrader not a mistake in SQ.


All indicators that use different timeframe will return 0 in MT StrategyTester, so your conditions will most probably fail and are never true.

r
#3

Marcel

05.10.2018 10:02

Attachment 1096_KeltChStochLowDHeikAsh1H1DStrategy 442268_4StundeGBPJPY.ex4 added

Mark, with all due respect:


So in general terms, this statement is wrong.


Enclosed is a multiframe strategy, which runs very well in the MT4 backtester.


Here is an example that disproves your testimony.

MF
#4

Mark Fric

05.10.2018 10:27
I'm not saying it doesn't work at all - some strategies might have a combination of conditions that sometimes evaluate as true even if its multi-tf conditions fail.


But because MT4 StrategyTester doesn't work with more timeframes this testing will be not correct, so it is totally useless. There is nothing that can be done about this on SQ or MQL side.


There's another problem - in one of your attached strategies you have parameters like:

extern string Subchart1Symbol = "GBPJPY_Tickstory"; 

extern int Subchart1Timeframe = 30; // M30

double Subchart1TickSizeSQ = 0.01;

extern string Subchart2Symbol = "GBPJPY_Tickstory"; 

extern int Subchart2Timeframe = 240; // H4


I'm not sure if you changed it before testing it in MT4, but the value "GBPJPY_Tickstory" is how data are called in SQ, it should be changed to the correct symbol in your MetaTrader, most probably "GBPJPY".


But it still wouldn't work in Strategy tester.


r
#5

Marcel

05.10.2018 11:42
Thanks for the hint! 
r
#6

Marcel

05.10.2018 18:22

"But it still wouldn't work in Strategy tester."


And again I must disagree with you. :)


After your hint above:

I'm not sure if you changed it before testing it in MT4, but the value "GBPJPY_Tickstory" is how data are called in SQ, it should be changed to the correct symbol in your MetaTrader, most probably "GBPJPY".

all strategies run super in the MT4 Backtester


That seems to me to be almost a benefit in SQX that even you have not yet realized :)

IH
#7

clonex / Ivan Hudec

09.10.2018 08:23
Voted for this task.
k
#8

Karish

13.10.2018 07:34
Voted for this task.
g
#9

geektrader

18.10.2018 12:24
Mark, while MT4 cannot access multiple symbols at once during a backtest, it *can* backtest multi-timeframe strategies as long as the accessed data within the code is > the main timeframe the EA is being backtested on. I am running and optimizing such an EA for years, running on M15, you can access anything M30 and higher. But running M15, you cannot access M5 nor M1. Just test it and you´ll see. MT4 forum (last post in that thread) demonstrates that too: https://www.mql5.com/en/forum/39662/page2
g
#10

geektrader

18.10.2018 12:24
Voted for this task.
k
#11

Karish

20.10.2018 06:37
I will add to this,

MT4 tester CANNOT run multi-pair strategies, for example if the strategy is working on of reading from EURUSD but the tester is running on GBPUSD, the tester will only work on GBPUSD and WONT read from EURUSD,


HOWEVER MT4 tester CAN run multi-timeframe strategies, if your strategy is for example on USDCAD H1, but the strategy is reading from H4 + D1 in conjunction with H1, then it will run no matter the TF.


in conclusion:

MT4 tester CAN run only multi-TF strategies and CANNOT run multi-pair strategies,

MT5 tester on the other hand CAN run multi-TF strategies + MT5 tester on the other hand CAN run multi-PAIR strategies too!,

im not sure about how SQ4 handles MQL5 right now but that is something we will see in the near future i hope :),


so Mark and the Dev team, you can tweak the code a bit to make the MT4 tester handle the multi-TFs :)

b
#12

bentra

04.11.2018 07:44
Voted for this task.
ML
#13

xsiboss

15.11.2018 19:30
Voted for this task.

Votes: +5

Drop files to upload

or

choose files

Max size: 5MB

Not allowed: exe, msi, application, reg, php, js, htaccess, htpasswd, gitignore

...
Wait please