Has anyone made Automatic Virtual Self-Optimization for their robot?

 

I think there is no robot that shows the same results all the time.

The results are also different when the broker, type of trading account, not to mention the different currency pairs, for which it is necessary to conduct optimization for each pair separately and select the optimal input parameters.

That is the necessity of virtual self-optimization (without the MT5 tester's optimizer).

How will it work?

Every week, on Saturday after the market closes, the virtual optimization is automatically activated for each pair using real ticks for 3, 6 or 12 months. It does not make more sense since the market is changing all the time.

Based on the results, a combination of input parameters is automatically selected, such as who has more profit, but less maximum drawdown, more trades and more recovery factor.

All of these selected parameters are written into a file so that they can be loaded when the market opens and work with the new parameters.

Why virtual optimization? Because no MQL trading functions will be called to ensure the speed. Of course, all operations and calculations have to be done manually, by formulas.

If anyone has used it, I wonder how fast it works and what the results are.

Is it worth applying it ?

 

Someone was shouting against machine learning and now they want self-optimisation

check out the end of this article.

https://www.mql5.com/ru/articles/6351

Грокаем "память" рынка через дифференцирование и энтропийный анализ
Грокаем "память" рынка через дифференцирование и энтропийный анализ
  • www.mql5.com
Известно, что наличие большого количества участников на ликвидных рынках, работающих с различными инвестиционными горизонтами, продуцируют много рыночного шума. Другими словами, рынки обладают низким отношением сигнала к шуму. Ситуацию усугубляют попытки целочисленного дифференцирования временного ряда, которое стирает остатки памяти, приводя...
 
This is not machine learning, but as a result of self-optimisation, the best or optimum parameters are selected, as is done after genetic optimisation on the MT5 tester.
 
Petros Shatakhtsyan:
It's not machine learning, but as a result of self-optimisation, the best or optimum parameters are chosen, as is done after genetic optimisation on the MT5 tester.

well, it's the same thing

 
So in 3, 6 or 12 months?
 
Vladimir Tkach:
So in 3, 6 or 12 months?

The question is not on the merits.

 

Well, in my TC League, this is the idea.

Each TC has limit parameters, and if they are breached, the system is over-optimised. True, everything happens not exactly in automatic mode, rather in "semi-automatic" - in the form of scripts that I run myself every day. However, the possibility of fully automating everything does exist, but I don't want to bother with full automation.

 
Vladimir Tkach:
So in 3, 6 or 12 months?

It's hard to say. You have to check it out in practice.

 
Georgiy Merts:

Well, in my TC League, it's supposed to do all that.

Each TS has marginal parameters, and if they are violated - the system gets overoptimized. However, everything is not exactly in automatic mode, but rather in "semi-automatic" - in the form of scripts, which I run every day. However, the possibility of fully automating everything does exist, but I don't want to bother with full automation.

What does your script do? Does it make all calculations by itself (also opening and closing orders) or does it use a tester?

And how is it possible to optimise, when there are a lot of brokerage companies and currency pairs? On top of that there are so many Expert Advisors.

I do optimisation only on MT5 and only on real ticks.

 
Georgiy Merts:

Well, in my TC League, this is the idea.

Each TC has limit parameters, and if they are breached, the system is over-optimised. True, everything happens not exactly in automatic mode, rather in "semi-automatic" - in the form of scripts that I run myself every day. However, the possibility of fully automating everything does exist, but I don't want to bother with full automation.

Well done, you remembered to mention your league
 
You take a matured YP. You write a dll. The idea is this: when you start the robot, you start a separate thread that conducts optimization (you must think through the algorithm), and then you feed it with every tick and take away its settings. All this stuff runs in the background. For a robot, all the overhead is: send the data AND receive it.
Reason: