Тестер стратегий MetaTrader 5: ошибки, баги, предложения по улучшению работы - страница 45

 
Slava:
Заменить && на ||

PS. Условие там ПРАВИЛЬНОЕ.
Там условие для тестирования, а не для работы. О чем в принципе и сообщает Print. Это сделано, т.к. иногда версию для тестирования могу дать "погонять" для интересующихся. 

И регулярно, как меняю входные параметры, сначала идет "холостая" прогонка - т.е. не торгует, потом уже со второго запуска все ок. Чем это плохо - в генетическом алгоритме сразу отсеиваются первые результаты:


 
Andrey Pogoreltsev:

PS. Условие там ПРАВИЛЬНОЕ.
Там условие для тестирования, а не для работы. О чем в принципе и сообщает Print. Это сделано, т.к. иногда версию для тестирования могу дать "погонять" для интересующихся. 

И регулярно, как меняю входные параметры, сначала идет "холостая" прогонка - т.е. не торгует, потом уже со второго запуска все ок. Чем это плохо - в генетическом алгоритме сразу отсеиваются первые результаты:


Какой номер билда?
 
Slava:
Какой номер билда?

2280

PS. Вот снова лог когда не было торговли. При этом в OnInit проверку проходит нормально. В OnTimer видимо нет, щас добавлю логов. Робот не торгует если не разрешено, видимо условие какое-то срабатывает.

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\4x.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\4x.ex5 from 2019.01.01 00:00 to 2019.12.29 00:00 started with inputs:
HM      0       22:14:38.624    Tester    LotsMultiplier=1e-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\4x.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. Вот снова лог когда не было торговли. При этом в OnInit проверку проходит нормально. В OnTimer видимо нет, щас добавлю логов. Робот не торгует если не разрешено, видимо условие какое-то срабатывает.

Доступен более свежий билд.
 
Slava:
Доступен более свежий билд.

Не получается

 
Andrey Pogoreltsev:

Не получается

Обновляться нужно с MetaQuotes-Demo

 
Artyom Trishkin:

Обновляться нужно с MetaQuotes-Demo

Спасибо. Обновил на 2286. Напишу если снова возникнет проблема.

 

Вообщем мой косяк. В режиме профилирования ifdef'ом инициализацию флагов закрыл и словил рандом(

PS. Причем, иногда ArrayResize очищал память (вроде во время визуального режима) - и там не мог отловить ошибку эту.

 

Всем снова привет)


Разработчики, вопрос к вам. Есть ли возможность настраивать параметры генетического алгоритма? Например задавать критерии остановки и мутации?

Сталкиваюсь часто с тем, что остановка происходит не доходя до экстремумов.

Также вопрос. Собираетесь ли вы внедрять другие методы, например имитацию отжига?

 
Билд 2280, но и в прошлых версиях это было. Если запускать на отладку скрипт или советник открывается новое окно первого символа из обзора рынка на таймфрейме 1H. А если мне надо отладить не на первом символе или на другом ТФ? Есть ли способ это сделать без шаманства вроде удаления всех символов, чтобы нужный стал первым?