All (not yet) about Strategy Tester, Optimization and Cloud - page 14

 

Forum on trading, automated trading systems and testing trading strategies

MQL5 Cloud Network: A technological breakthrough in trading strategy testing

MetaQuotes, 2024.07.16 11:25

Since its launch, MQL5 Cloud Network has completed more than 16 billion tasks. This figure shows how many times users have tested their trading strategies. Every day, the network enables algorithmic traders to run calculations on tens of thousands of computers worldwide with just a few clicks, without having to wait for results on a local machine.

Millions of parameter combinations for trading robots can be easily tested through the network. Users gain instant access to thousands of cores, while the network automatically distributes tasks and all necessary calculation parameters. Results are available within minutes:



We have recently upgraded the entire MQL5 Cloud Network infrastructure to enhance its performance:

  • Added new servers and upgraded existing ones for better agent registration and task distribution. The network now operates through 7 points located worldwide. Improved load balancing enables more efficient task management and distribution. The optimized geographical coverage has reduced network latency during calculations.
  • The total network bandwidth increased to 60 Gbps. The network ensures fast data transmission between traders and agents performing tasks. The bandwidth of each network node is displayed next to its name in the strategy tester.
  • Improved historical data cache. With the optimized "hot cache" on servers, agents receive required testing data faster, which in turn speeds up the overall testing process for traders.
  • Slow agents have been excluded. The network no longer accepts agents running under virtualization systems. This restriction has been introduced to avoid calculation slowdowns caused by dishonest participants.

Currently, the network includes approximately 50,000 fast and active agents, enabling the efficient execution of very complex and time-consuming computations. You can even conduct scientific research using the strategy tester's special fast mathematical mode and OpenCL support.

Speed up your calculations through the MQL5 Cloud Network and develop strategies faster without having to prepare infrastructure or wait for results.


Join MQL5 Cloud Network and start earning

When you perform everyday activities on your computer, most of its computing power remains unused. Install testing agents and earn by renting out these idle resources:

  1. Download MetaTrader 5 Strategy Tester Agent
  2. Install agents in the Services section by clicking "Add" — no configuration needed
  3. Specify your MQL5.com account in the MQL5 Cloud Network section to receive payments



All further operations of your installed agents will be automatic. The network will distribute tasks, collect results, and transfer payments for the completed work to your account daily. Monitor your agent operations using a detailed report. Join MQL5 Cloud Network and start earning.


Download Agents Manager and start earning

 

Population optimization algorithms: Resistance to getting stuck in local extrema (Part II)

As part of our research, we delve into the study of the robustness of population optimization algorithms, and their ability to overcome local traps and achieve global maxima on a variety of test functions. In the previous article, we looked at algorithms that showed modest results in the ranking. Now it is time to pay attention to the top performers.

This research stage will allow us to not only better understand the resilience of population algorithms to getting stuck in local traps, but also to identify the key factors that contribute to their success in the face of diverse and complex test functions. My efforts aim to increase understanding of how these algorithms can be optimized and improved, and to identify opportunities for their joint use and hybridization to effectively solve various optimization problems in the future.
Population optimization algorithms: Resistance to getting stuck in local extrema (Part II)
Population optimization algorithms: Resistance to getting stuck in local extrema (Part II)
  • www.mql5.com
We continue our experiment that aims to examine the behavior of population optimization algorithms in the context of their ability to efficiently escape local minima when population diversity is low and reach global maxima. Research results are provided.
 

Population optimization algorithms: Whale Optimization Algorithm (WOA)

Population optimization algorithms: Whale Optimization Algorithm (WOA)

The WOA algorithm starts by initializing a population of whales with random positions. Then a leader is selected - the whale with the best value of the objective function (in fact, the best global solution). The positions of the remaining whales are updated taking into account the position of the leader. This occurs in two modes: research mode and exploitation mode. In exploration mode, whales update their positions using a random search around the current global best solution. In exploitation mode, whales update their positions, moving closer to their current best solution.
Population optimization algorithms: Whale Optimization Algorithm (WOA)
Population optimization algorithms: Whale Optimization Algorithm (WOA)
  • www.mql5.com
Whale Optimization Algorithm (WOA) is a metaheuristic algorithm inspired by the behavior and hunting strategies of humpback whales. The main idea of WOA is to mimic the so-called "bubble-net" feeding method, in which whales create bubbles around prey and then attack it in a spiral motion.
 

During genetic optimisation by user criterion, the log writes:

LQ 0 00:02:22.988 Tester Best result 686.6454798300078 produced at generation 1. Next generation 3

FE 0 00:59:07.948 Tester Best result 686.6454798300078 produced at generation 1. Next generation 4

QH 0 01:59:47.523 Tester Best result 686.6454798300078 produced at generation 1. Next generation 5

IL 0 02:59:29.481 Tester Best result 709.7718874641139 produced at generation 5. Next generation 6

RS 0 03:52:52.812 Tester Best result 709.7718874641139 produced at generation 5. Next generation 7

LG 0 04:49:40.847 Tester Best result 837.2440814840006 produced at generation 7. Next generation 8

IJ 0 05:34:00.992 Tester Best result 837.2440814840006 produced at generation 7. Next generation 9

GM 0 06:20:56.063 Tester Best result 837.2440814840006 produced at generation 7. Next generation 10


Whereas in the table there are results higher than 837.24:



How is this possible?

 
Ivan Titov #:

How is that possible?

Maybe these best results are taken from the cache of a previous optimisation run?
 
Yuriy Bykov #:
Maybe these best results are taken from the cache of the previous optimisation run?

Shouldn't it have cleared the list after starting a new optimisation? Besides, the result should not be less if the parameters have not changed. And there was a result of 837.24 for 5 generations.

And one more glitch: local network agents do not work although they are launched:

And at the moment of starting the optimisation they are switched off for some reason:


 
Ivan Titov #:

Shouldn't it have cleared the list after starting a new optimisation? Besides, the result should not be less if the parameters have not changed. And there was a result of 837.24 for 5 generations.

And one more glitch: local network agents do not work, although they are launched:

And they are switched off for some reason at the moment of optimisation start:


Please check if you are running optimisation for the debug version of the compiled EA.
Or just compile in maximal optimisation mode and try to run optimisation again.
 
Network agents are working, thanks for the spell! For results worse than the previous optimisation the question is still open.
 
Ivan Titov #:
Network agents are working

I was too excited. After going through generation 0 network agents fell off again. After generation 1 a part of local ones also fell off. And it adds only 1 pass per each core. I.e. if in generation 0 there were about 300 passes, in generation 1 - 7 passes. This is the 3rd generation (network agents do not work since the 1st generation):


 
Ivan Titov #:

I was too excited. After going through generation 0, the network ones fell off again. After generation 1 a part of local ones also fell off. And it adds only 1 pass for each core. I.e. if in generation 0 there were about 300 passes, in generation 1 - 7 passes. This is the 3rd generation (network agents do not work since the 1st generation):

All we can tell from the picture is that you have network agents running faster than local agents. They have already completed the tasks that have been assigned to them. The local agents have to finish the tasks assigned to them, after that a new distribution of next generation tasks will take place.
I can't say why you have fewer tasks in the next generations. Perhaps, it is related to your EA and its parameters that are selected during optimisation.
If you have only seven tasks per generation, it seems that the optimiser simply does not see the sense in using network agents. That is why it uses only local ones.