MT5 terminal updated today and the "Optimisation" window does not show up during the test - page 2

 
Renat Fatkhullin:

Can you repeat this with a full description of the conditions and logs to reproduce?

That's the thing, we have radically rewritten the result and sub-calculation cache mechanisms. They work very well and correctly.

I've checked it especially now myself:

  1. Started test, waited for 10% of optimization pass, pressed stop. Then start - it starts with the last result of 10%. It was perfect.
  2. Now I made the test more difficult. Pressed Stop at the step 1 for 70%. Restarted the terminal and pressed Start - the test started at 70%. Perfect.

Most likely, the Expert Advisor was recompiled or some other changes were made in the market environment which inevitably leads to cache reset.

Optimization of a simple MA Expert Advisor. Interrupted 2 times and always optimisation comes from the beginning.
 
Alexey Navoykov:

Wouldn't it be more logical to make a "Refresh" button next to the table? Then the user would control the table update himself, and all the problems would disappear.

And what you have removed at all - well, that's not an option at all. There is always a need to monitor the results in the process of optimisation.

After all, it is up to the user to decide whether to look at the table or not. If the tab with the table is minimized, nothing should be sorted.

No, we won't.

I explained above why pulling 500,000, 1,000,000, 10,000,000, 50,000,000 into a table of intermediate rows useless to the human eye makes no sense. It's very expensive technically and completely useless.

Optimization graph window is always available, it is more sparing for resources (does not require resorting) and allows you to observe the optimization process in an acceptable for human eye view.


I forgot another important point in what is done:

  • drastically reduced memory consumption by the terminal during heavy optimizations
 

And by the way, what sorting algorithm are you using? Why is it so slow? If elements are added to an already sorted array, it should be very fast. It doesn't depend much on the size of the array.

 
Renat Fatkhullin:

...

Forgot another important point in what is done:

  • drastically reduced memory consumption by the terminal during heavy optimizations

Thank you, interesting. We'll be testing.

Please consider any ideas from this article for further development of the tester:Visualisation of the results of optimization by selected criterion

There are some more ideas on this topic. I'll find time and post them later too.

 
Texnolog:
Optimization of simple MA EA. I interrupted it 2 times and it always optimizes from the beginning.

Why didn't you say from the start that you were running genetics?

The very principle of genetic search is based on randomness and so it has no point in "continuing what you started". Its job is to run randomly.

And even then the cache is used. It's just that your probability of hitting previously calculated results is very low (you have a search area of 50 million variants). So it looks like a start from the beginning, since the starting point is randomized.

 

Judging by the graph "genetic algorithm" doesn't work((((

11

 

This makes some lines darker and others faded.

33

 
Texnolog:

Judging by the graph "genetic algorithm" doesn't work((((

Why don't you attach a description for reproduction?

Don't you understand that a picture is not evidence in the complete absence of a description? You are on a technical forum discussing technical issues.

I tried to build to your conditions:

  • your standard Moving Average.set
  • your set of settings for 50 million passes
    ; saved on 2018.04.28 16:53:11
    ; this file contains input parameters for testing/optimizing Moving Average expert advisor
    ; to use it in the strategy tester, click Load in the context menu of the Inputs tab
    ;
    MaximumRisk=0.02||0.02||0.002000||0.200000||Y
    DecreaseFactor=3||3||0.300000||30.000000||Y
    MovingPeriod=12||12||1||120||Y
    MovingShift=6||6||1||60||Y
    
  • MetaQuotes-Demo server, EURUSD H1, last year, Open Prices mode with genetics
  • ran the genetics

Here is the result: everything is normal and reasonable, the tester works, the genetics finds the right results



You can see how the genetics has entered the green zones of best results and has consolidated there.

 
Texnolog:

This makes some lines darker and others faded.

The gray lines just show the use of results from the cache of previous runs.

This is what your example (comment #18) already shows on the second run:

2018.04.28 17:35:56.021 Tester  genetic calculation is over
2018.04.28 17:35:56.021 Tester  result cache used 4515 times
2018.04.28 17:35:56.021 Tester  genetic optimization finished on pass 11008 (of 49644595)
2018.04.28 17:35:56.032 Statistics      optimization done in 0 minutes 48 seconds
2018.04.28 17:35:56.032 Statistics      local 6493 tasks (100%), remote 0 tasks (0%), cloud 0 tasks (0%)

On the second run there were 11,008 variations, and 4,515 passes were in cache from previous run. 41% hit rate

In reality, the tester only had to make 6,493 new tests out of 11,008.


On the third repetition of genetics the percentage of cache hits increased and already 6,979 old results were used: 50% of cache hits

2018.04.28 17:42:45.720 Tester  genetic calculation is over
2018.04.28 17:42:45.720 Tester  result cache used 6979 times
2018.04.28 17:42:45.720 Tester  genetic optimization finished on pass 13824 (of 49644595)
2018.04.28 17:42:45.731 Statistics      optimization done in 0 minutes 50 seconds
2018.04.28 17:42:45.731 Statistics      local 6845 tasks (100%), remote 0 tasks (0%), cloud 0 tasks (0%)


On the fourth: Cache hits at 54%

2018.04.28 17:44:37.820 Tester  genetic calculation is over
2018.04.28 17:44:37.820 Tester  result cache used 6047 times
2018.04.28 17:44:37.820 Tester  genetic optimization finished on pass 11008 (of 49644595)
2018.04.28 17:44:37.831 Statistics      optimization done in 0 minutes 36 seconds
2018.04.28 17:44:37.831 Statistics      local 4961 tasks (100%), remote 0 tasks (0%), cloud 0 tasks (0%)



So the result cache is working properly and as planned.

 

The optimisation schedule is not updated.

2500 passes:

Reason: