MetaTrader 5 Strategy Tester: bugs, bugs, sugestões para melhorias - página 45

 
Slava:
Substituir && por ||||

PS. A condição lá é DIREITA.
A condição lá é para testes, não para trabalho. Que é basicamente o que a impressão está a relatar. Isto é feito, porque às vezes posso dar a versão de teste àqueles que estão interessados.

E regularmente, quando altero os parâmetros de entrada, a primeira corrida vai "ociosa" - ou seja, não troca, depois a partir da segunda corrida tudo fica OK. O que está errado com isto - o algoritmo genético elimina imediatamente os primeiros resultados:


 
Andrey Pogoreltsev:

PS. A condição lá é DIREITA.
É uma condição de teste, não uma condição de corrida. Que é basicamente o que a impressão está a relatar. Isto é feito, porque às vezes posso dar a versão de teste àqueles que estão interessados.

E regularmente, quando altero os parâmetros de entrada, a primeira corrida vai "ociosa" - ou seja, não troca, depois a partir da segunda corrida tudo fica OK. O que está errado com isto - o algoritmo genético elimina imediatamente os primeiros resultados:


Qual é o número de construção?
 
Slava:
Qual é o número de construção?

2280

PS. Aqui está novamente o diário de bordo quando não havia comércio. Ao mesmo tempo, no OnInit, verifica se está tudo bem. Aparentemente não no OnTimer, vou adicionar registos. O robô não negoceia se não for permitido, provavelmente alguma condição desencadeia.

NL      0       21:15:27.195    Server  MetaTester 5 stopped
IE      0       22:14:37.946    Startup MetaTester 5 x64 build 2280 (13 Dec 2019)
FQ      0       22:14:37.976    Server  MetaTester 5 started on 127.0.0.1:3011
QJ      0       22:14:37.977    Startup initialization finished
DQ      0       22:14:38.125    127.0.0.1       login (build 2280)
IG      0       22:14:38.145    Network 4372 bytes of account info loaded
CP      0       22:14:38.145    Network 1482 bytes of tester parameters loaded
CG      0       22:14:38.145    Network 6332 bytes of input parameters loaded
GM      0       22:14:38.145    Network 386 bytes of symbols list loaded
CJ      0       22:14:38.146    Tester  expert file added: Experts\Advisors\4 x.ex5. 1044587 bytes loaded
DR      0       22:14:38.148    Tester  6413 Mb available, 80 blocks set for ticks generating
HG      0       22:14:38.148    Tester  initial deposit 1000000.00 USD, leverage 1:500
LM      0       22:14:38.152    Tester  successfully initialized
IJ      0       22:14:38.152    Network 1018 Kb of total initialization data received
QS      0       22:14:38.152    Tester  AMD Ryzen 5 2600 Six-Core Processor , 32704 MB
LL      0       22:14:38.163    Symbols AUDCAD.m: symbol to be synchronized
MG      0       22:14:38.164    Symbols AUDCAD.m: symbol synchronized, 3800 bytes of symbol info received
PM      0       22:14:38.486    History AUDCAD.m: load 31 bytes of history data to synchronize in 0:00:00.001
KK      0       22:14:38.486    History AUDCAD.m: history synchronized from 2016.01.04 to 2019.12.27
ME      0       22:14:38.488    Ticks   AUDCAD.m: ticks synchronization started
MS      0       22:14:38.489    Ticks   AUDCAD.m: load 38 bytes of tick data to synchronize in 0:00:00.000
QF      0       22:14:38.489    Ticks   AUDCAD.m: history ticks synchronized from 2017.01.02 to 2019.12.27
OJ      0       22:14:38.601    History AUDCAD.m,M1: history cache allocated for 742101 bars and contains 369587 bars from 2018.01.02 10:00 to 2018.12.31 20:00
MK      0       22:14:38.601    History AUDCAD.m,M1: history begins from 2018.01.02 10:00
QR      0       22:14:38.624    Tester  AUDCAD.m,M1 (RoboForex-MetaTrader 5): generating based on real ticks
NS      0       22:14:38.624    Tester  AUDCAD.m,M1: testing of Experts\Advisors\4 x.ex5 from 2019.01.01 00:00 to 2019.12.29 00:00 started with inputs:
HM      0       22:14:38.624    Tester    LotsMultiplier=1 e-06
CH      0       22:14:38.624    Tester    SymbolPostfix=.m
DG      0       22:14:38.624    Tester    DefaultSet=1
QO      0       22:14:38.624    Tester    MaxTrades=40
FK      0       22:14:38.624    Tester    Deviation=7
RG      0       22:14:38.624    Tester    ProfitDigger=false
KM      0       22:14:38.624    Tester    RandomShuffler=false
GI      0       22:14:38.624    Tester    PeriodSec=60
NK      0       22:14:38.624    Tester    Booster=1.4
GS      0       22:14:38.624    Tester    TakeProfit=9
ND      0       22:14:38.624    Tester    PipStarter=46
KH      0       22:14:38.624    Tester    Symbols=EURGBP
KM      0       22:14:38.647    Symbols EURGBP.m: symbol to be synchronized
KF      0       22:14:38.648    Symbols EURGBP.m: symbol synchronized, 3800 bytes of symbol info received
EN      0       22:14:39.139    History EURGBP.m: load 31 bytes of history data to synchronize in 0:00:00.227
QR      0       22:14:39.139    History EURGBP.m: history synchronized from 2016.01.04 to 2019.12.27
OI      0       22:14:39.141    Ticks   EURGBP.m: ticks synchronization started
QS      0       22:14:40.239    Ticks   EURGBP.m: load 38 bytes of tick data to synchronize in 0:00:01.094
IO      0       22:14:40.239    Ticks   EURGBP.m: history ticks synchronized from 2017.01.02 to 2019.12.27
GH      0       22:14:40.268    Symbols GBPUSD.m: symbol to be synchronized
JN      0       22:14:40.269    Symbols GBPUSD.m: symbol synchronized, 3800 bytes of symbol info received
QP      0       22:14:40.865    History GBPUSD.m: load 31 bytes of history data to synchronize in 0:00:00.313
MD      0       22:14:40.865    History GBPUSD.m: history synchronized from 2016.01.04 to 2019.12.27
FG      0       22:14:40.867    Ticks   GBPUSD.m: ticks synchronization started
JM      0       22:14:41.962    Ticks   GBPUSD.m: load 38 bytes of tick data to synchronize in 0:00:01.093
KF      0       22:14:41.962    Ticks   GBPUSD.m: history ticks synchronized from 2017.01.02 to 2019.12.27
HP      0       22:14:45.633    Ticks   AUDCAD.m : real ticks begin from 2017.01.02 00:00:00
FN      0       22:14:48.989    Ticks   EURGBP.m : real ticks begin from 2017.01.02 00:00:00
LE      0       22:14:53.730    Ticks   GBPUSD.m : real ticks begin from 2017.01.02 00:00:00
MO      0       22:15:11.576    Tester  final balance 1000000.00 USD
QF      0       22:15:11.576    Tester  OnTester result 0
DQ      0       22:15:11.638    Tester  AUDCAD.m,M1: 25591590 ticks, 366283 bars generated. Environment synchronized in 0:00:00.029. Test passed in 0:00:33.483 (including ticks preprocessing 0:00:11.735).
FJ      0       22:15:11.638    Tester  AUDCAD.m,M1: total time from login to stop testing 0:00:33.512 (including 0:00:02.762 for history data synchronization)
FI      0       22:15:11.638    Tester  84417924 total ticks for all symbols
LS      0       22:15:11.638    Tester  AUDCAD.m: generate 25591590 ticks in 0:00:03.625, passed to tester 25591591 ticks
GP      0       22:15:11.638    Tester  EURGBP.m: generate 23575704 ticks in 0:00:03.360, passed to tester 23575705 ticks
OF      0       22:15:11.638    Tester  GBPUSD.m: generate 35250630 ticks in 0:00:04.750, passed to tester 35250631 ticks
CG      0       22:15:11.638    Tester  2119 Mb memory used including 42 Mb of history data, 1728 Mb of tick data
RK      0       22:15:11.638    Tester  log file "E:\Metatrader\Tester\Agent-127.0.0.1-3011\logs\20200101.log" written
GR      0       22:15:11.639            test Experts\Advisors\4 x.ex5 on AUDCAD.m,M1 thread finished
LH      0       22:15:11.654    127.0.0.1       prepare for shutdown
KO      0       22:20:39.558    Server  MetaTester 5 stopped
 
Andrey Pogoreltsev:

2280

PS. Aqui está novamente o diário de bordo quando não havia comércio. Ao mesmo tempo, no OnInit, verifica se está tudo bem. Aparentemente não no OnTimer, vou adicionar registos. O robô não negoceia se não for permitido, provavelmente alguma condição é desencadeada.

Construção mais recente disponível.
 
Slava:
Está disponível uma construção mais recente.

Não funciona

 
Andrey Pogoreltsev:

Não funciona

Actualização a partir de MetaQuotes-Demo

 
Artyom Trishkin:

Actualização a partir de MetaQuotes-Demo

Obrigado. Actualizado para 2286. Escrever-lhe-ei se houver novamente um problema.

 

Em geral, a culpa é minha. Fechei a inicialização das bandeiras em modo ifdef profiling e recebi aleatoriamente(

PS. E, por vezes, o ArrayResize limpa memória (como durante o modo visual) - e não conseguia apanhar este erro ali.

 

Olá novamente a todos)


Desenvolvedores, uma pergunta para si. É possível personalizar os parâmetros do algoritmo genético? Por exemplo, pode definir critérios de paragem e de mutação?

Deparo-me frequentemente com o facto de que a paragem ocorre antes dos extremos serem alcançados.

Também uma pergunta. Vai introduzir outros métodos, tais como o recozimento simulado?

 
Bild 2280, mas este era também o caso nas versões anteriores. Se eu executar um script ou um EA para depuração, abre-se uma nova janela do primeiro símbolo da visão geral do mercado no período de 1H. E se eu precisar de depurar não no primeiro símbolo ou em outro período de tempo? Há alguma forma de o fazer sem apagar todos os símbolos para que o símbolo certo venha primeiro?