Automatic Validation error for my expert

 
Hi, Service Desk.

I received an error when doing an automatic test from mql5.com.

Error message 2:
test on EURUSD, H1 (hedging)
strategy tester report 2 total trades
test on XAUUSD, D1 (hedging)
log files size exceeded 2071 MB, test terminated
strategy tester report not found

I can explain:
1. The expert works based on the signal from the implanted logic, so if there is no trade means there is no signal.

2. Log files exceeding 2071 MB did not occur to me when doing backtesting on the MT5 Terminal from 2016-2020.

What platform did you use to do the test? Is it the same as the MT5 terminal? if it's different, can I as an expert developer get it? so I can adjust my experts according to the platform, not adjust it to the MT5 terminal.

3. In the case of EURUSD H1 (hedging), there are reports of 2 total trades, but why is it stated as an error?

4. Expert Multi Z is designed to work on 7 major currency pairs: EURUSD, GBPUSD, AUDUSD, NZDUSD, USDCHF, USDCAD, USDJPY so the expert will not trade on pairs outside of it. Not because it is unfriendly to prospective buyers, but this strategy is not suitable when applied outside of the 7 major pairs.

Is there an option to upload an expert that only works for certain pairs?

I hope that can be understood.

Regards,


Sugianto automatic validation error
 

tester take too long time



After making a few adjustments, the message "Tester take too long time" now appears. Of course, because the backtest is 7 pairs at once with 4 filter signals. It takes a long time, because the expert analyzes the elliot wave pattern on the multi-timeframe, from the H1, H12 and D1 timeframes on 7 pairs at a time. is there any solution for this issue? 

 

There is one article which every seller on the market should read: it is about validation of the Market products - 

---------------- 

The checks a trading robot must pass before publication in the Market

Why products are checked before they are published in the Market 

Before any product is published in the Market, it must undergo compulsory preliminary checks, as a small error in the expert or indicator logic can cause losses on the trading account. That is why we have developed a series of basic checks to ensure the required quality level of the Market products.

If any errors are identified by the Market moderators in the process of checking your product, you will have to fix all of them. This article considers the most frequent errors made by developers in their trading robots and technical indicators. We also recommend reading the following articles: 

 
Sergey Golubev:

There is one article which every seller on the market should read: it is about validation of the Market products - 

---------------- 

The checks a trading robot must pass before publication in the Market

Thank you for the advice. Of course I have read the article. And I have also read this article, but still haven't found a solution. https://www.mql5.com/en/blogs/post/686716

Solving Automatic Validation Problems Arising During Product Submission in MQL5 Market
Solving Automatic Validation Problems Arising During Product Submission in MQL5 Market
  • 2017.08.07
  • www.mql5.com
If you're distributing some products for MetaTrader 4/5 via the Market, you probably know that a special "welcome" stage of automatic product validation has been added recently by MetaQuotes on the site. It starts just after you submit a compiled file, in case that all other stuff is already filled in. Only products that passed the validation...
 
Sugianto:



After making a few adjustments, the message "Tester take too long time" now appears. Of course, because the backtest is 7 pairs at once with 4 filter signals. It takes a long time, because the expert analyzes the elliot wave pattern on the multi-timeframe, from the H1, H12 and D1 timeframes on 7 pairs at a time. is there any solution for this issue? 

is there an option to do the test for only 1 month so that it doesn't take long? Isn't the test just to make sure the expert works well? The test problem is too long because the MT5 terminal is still not powerful enough to handle so much data. Not because the expert does not work well.

At this point you can try more code optimization. I had similar problem and tried to optimize the code more and more. So basically I went through every piece of code line by line and asked three questions: 1. what this code is doing? Is it the right place for this code to be? 3. Is there any room for it to be even more optimized. As a result I removed every unnecessary codes, find better place for it to sit and optimize it if possible. After this I put it for validation and it succeeded.

You should also closely look at the for loops. Check if there is any infinite loops or any condition that makes a for loop to run continuously. Try to limit the loops every where and also reduce loop counters and then try for validation again. It might just work. 

How to quickly develop and debug a trading strategy in MetaTrader 5
How to quickly develop and debug a trading strategy in MetaTrader 5
  • www.mql5.com
Scalping automatic systems are rightfully regarded the pinnacle of algorithmic trading, but at the same time their code is the most difficult to write. In this article we will show how to build strategies based on analysis of incoming ticks using the built-in debugging tools and visual testing. Developing rules for entry and exit often require...
 
Sugianto:

After making a few adjustments, the message "Tester take too long time" now appears. Of course, because the backtest is 7 pairs at once with 4 filter signals. It takes a long time, because the expert analyzes the elliot wave pattern on the multi-timeframe, from the H1, H12 and D1 timeframes on 7 pairs at a time. is there any solution for this issue? 

You need to optimize your code. If you don't know how to do it you can hire a professional coder who knows it.

 

solved


Dear Service Desk,

I have solved the problem and the expert can be published.

As I suspected, the ability of the platform tester is very limited and not powerfull so it cannot handle a lot of data.

so what I did was reduce the number of history bars that had to be counted from 300 to 10. And the backtest pair from 7 to 3.

Hopefully my prospective customers can understand this situation. The deduction is only a backtest but does not apply to real trade.

 
Syed Oarasul Islam:

At this point you can try more code optimization. I had similar problem and tried to optimize the code more and more. So basically I went through every piece of code line by line and asked three questions: 1. what this code is doing? Is it the right place for this code to be? 3. Is there any room for it to be even more optimized. As a result I removed every unnecessary codes, find better place for it to sit and optimize it if possible. After this I put it for validation and it succeeded.

You should also closely look at the for loops. Check if there is any infinite loops or any condition that makes a for loop to run continuously. Try to limit the loops every where and also reduce loop counters and then try for validation again. It might just work. 

Hi Syed,


Thank you for giving a very good advice and sharing your experiences.

the way you analyze errors in the expert is almost the same as the method I used.


It seems we have something in common.


And thank you for taking the time to give direction, advice and share your experiences. This means a lot to me.


Nice to know you.

 
Alain Verleyen:

You need to optimize your code. If you don't know how to do it you can hire a professional coder who knows it.

Hi Alain,


thank you for paying attention to this topic and for giving meaningful advice, but I have solved this problem.

 
Sugianto:

Hi Alain,


thank you for paying attention to this topic and for giving meaningful advice, but I have solved this problem.

The problem is your "solution" will prevent your users to backtest your EA. That's not good.
 
Alain Verleyen:
The problem is your "solution" will prevent your users to backtest your EA. That's not good.

Your concern is my concern too.

In the first try I made measurements that were too extreme based on allegations that turned out to be true.

So I did an update so that the Trader or my prospective customer can fill in the parameter bar that will be calculated and I also updated the pair that can be backtested to 8 and in the second try/update it was also successful.

So the problem is solved 100%, everyone's happy.

Reason: