Discussing the article: "Developing a multi-currency Expert Advisor (Part 21): Preparing for an important experiment and optimizing the code"

 

Check out the new article: Developing a multi-currency Expert Advisor (Part 21): Preparing for an important experiment and optimizing the code.

For further progress it would be good to see if we can improve the results by periodically re-running the automatic optimization and generating a new EA. The stumbling block in many debates about the use of parameter optimization is the question of how long the obtained parameters can be used for trading in the future period while maintaining the profitability and drawdown at the specified levels. And is it even possible to do this?

In general, we need a script to fill the database with almost identical projects. The main difference will be only in the start and end dates of the optimization period. The composition of stages, stage works and tasks within the work may be completely identical. Therefore, for now, you can make a service EA with a small number of inputs, including the start date and duration of the optimization period. By running it in optimization mode with a search for start dates, we can fill the database with similar projects. It is not yet clear what other parameters make sense to include in the inputs; we will decide on them as development progresses.

Completely running all optimization tasks, even within a single project, can take a long time. If there is not one such project that needs to be completed, but a dozen or more, then we are talking about rather time-consuming tasks. Therefore, it makes sense to see if it is possible to somehow speed up the work of stage EAs. To detect bottlenecks that need to be fixed, we will use the profiler included with MetaEditor.

Next we need to decide how to simulate the work from several obtained initialization strings (each project, after completing its tasks, will provide one initialization string of the final EA). Most likely, we will need to create a new testing EA specifically designed for this type of work. But I will probably put this off until the next article.


Author: Yuriy Bykov

 

Forum on trading, automated trading systems and testing trading strategies

Libraries: OnTickMulti

fxsaber, 2024.03.18 20:49

Above highlighted in the code a simple way to accelerate a multicurrency EA without any Virtual libraries.

Configuration Result
Without Virtual.mqh + MagicNumberOrderSymbol shortest pass 0:00:08.608, longest pass 0:00:10.236, average pass 0:00:08.942

Free 1.5x speedup!

Any string actions should preferably be thrown out completely.

 

this brilliant and mightily impressive!


the graph you showed looks amazing.

but being a newbie at this - i am a bit confused if there is a specific file to use the test run the advisor myself?

running the SimpleVolumeStage3.mq5 shows a whole host of errors and is not working yet?

where do you recommend I find this?

 
Unfortunately, everything is not as simple as we would like. To be able tolaunch the Expert Advisor of the third stage, it is necessary to specify the IDs of the passes obtained as a result ofthe previous stages of theoptimization pipeline. How to get them is described in the articles.
 
Yuriy Bykov #:
Unfortunately, everything is not as simple as we would like. To be able tolaunch the Expert Advisor of the third stage, it is necessary to specify theIDs of the passes obtained as a result ofthe previous stages of the optimization pipeline. How to get them is described in the articles.

Understood. However, since you have taken so much of efforts to describe your work in a simpler manner, it will be even great if you could create a video tutorial to teach the operation/optimisation of the set of EAs you are creating. Thanks

 
Arup Nag #:

Understood. However, since you have taken so much of efforts to describe your work in a simpler manner, it will be even great if you could create a video tutorial to teach the operation/optimisation of the set of EAs you are creating. Thanks

Hi, thanks for the suggestion. I can't promise that I'll actually be able to record videos for articles, but I'll think about how and in what form I can make a video that helps readers of articles.

 
Yuriy Bykov #:

Hi, thanks for the suggestion. I can't promise that I'll actually be able to record videos for articles, but I'll think about how and in what form I can make a video that helps readers of articles.

Thank you. A very simple one lasting a few seconds will be sufficient. Since strategy testing and optimisation in MT5 is more complex than what used to be in MT4, people who are transitioning find it difficult sometimes. All you can do is showing the exact settings you use in getting those results which you are posting in the articles.

 

HI Download Last Part Files (21) How I Can User This Advisor Can u Help me please