Новая версия платформы MetaTrader 5 build 1930: Плавающие окна графиков и .Net библиотеки в MQL5 - страница 130

 
Алексей Тарабанов:

return B::f, тогда рекурсии не будет. 

Будет.

 
Artyom trishkin :

Please insert the code to reproduce the error rather than the images that are hard to read.

Please insert the code to reproduce the error rather than the images that are hard to read.

Я надеюсь, что эта ошибка будет исправлена. У меня сломался проект из-за этого

 
Запустил одиночный прогон, получил в логе такое (это полный лог, без пропусков)
2019.01.27 15:43:08.430 Tester  TESTER_EURUSD.rann_RannForex: history data begins from 2018.02.26 00:00
2019.01.27 15:43:08.430 Tester  TESTER_EURUSD.rann_RannForex: ticks data begins from 2018.02.26 00:00
2019.01.27 15:43:08.430 Core 1  connecting to 127.0.0.1:3000
2019.01.27 15:43:08.431 Core 1  connected
2019.01.27 15:43:08.432 Core 1  authorized (agent build 1978)
2019.01.27 15:43:08.436 Tester  TESTER_EURUSD.rann_RannForex,M1 (MetaQuotes-Demo): testing of Experts\fxsaber\SystemChannel\TesterEA.ex5 from 2018.10.01 00:00 to 2019.01.26 00:00
2019.01.27 15:43:11.785 Core 1  common synchronization completed
2019.01.27 15:43:11.789 Core 1  TESTER_EURUSD.rann_RannForex: history for 2017 year synchronized
2019.01.27 15:43:30.842 Core 1  TESTER_EURUSD.rann_RannForex: ticks synchronized already [87 bytes]
2019.01.27 15:43:30.842 Core 1  login (build 1978)
2019.01.27 15:43:30.842 Core 1  account info found with currency USD
2019.01.27 15:43:30.842 Core 1  1482 bytes of tester parameters loaded
2019.01.27 15:43:30.842 Core 1  5308 bytes of input parameters loaded
2019.01.27 15:43:30.842 Core 1  initial deposit 10000.00 USD, leverage 1:100
2019.01.27 15:43:30.842 Core 1  successfully initialized
2019.01.27 15:43:30.842 Core 1  819 bytes of total initialization data received
2019.01.27 15:43:30.842 Core 1  Intel Core i7-6700K  @ 4.00GHz, 16322 MB
2019.01.27 15:43:30.842 Core 1  TESTER_EURUSD.rann_RannForex: symbol to be synchronized
2019.01.27 15:43:30.842 Core 1  TESTER_EURUSD.rann_RannForex: symbol synchronized, 3464 bytes of symbol info received
2019.01.27 15:43:30.842 Core 1  TESTER_EURUSD.rann_RannForex: load 71 bytes of history data to synchronize in 0:00:00.001
2019.01.27 15:43:30.842 Core 1  TESTER_EURUSD.rann_RannForex: history synchronized from 2018.02.26 to 2019.01.25
2019.01.27 15:43:30.842 Core 1  TESTER_EURUSD.rann_RannForex: ticks synchronization started
2019.01.27 15:43:49.401 Core 1  TESTER_EURUSD.rann_RannForex: load 78 bytes of tick data to synchronize in 0:00:00.000
2019.01.27 15:43:49.401 Core 1  TESTER_EURUSD.rann_RannForex: history ticks synchronized from 2018.10.01 to 2019.01.25
2019.01.27 15:44:54.802 Core 1  disconnected
2019.01.27 15:44:58.141 Core 1  connection closed

При этом вкладка "Бэктест" не появилась. Однако, вкладка, График есть, но оборванный:


Посмотрел лог соответствующего Агента. По нему видно, что проход выполнен полноценно (final balance, log written и т.д.). Однако, есть настораживающие строки

PL      0       15:43:08.432    127.0.0.1       login (build 1978)
KI      0       15:43:08.436    Tester  account info found with currency USD
ML      0       15:43:08.436    Network 1482 bytes of tester parameters loaded
OJ      0       15:43:08.436    Network 5308 bytes of input parameters loaded
GL      0       15:43:08.450    Tester  initial deposit 10000.00 USD, leverage 1:100
JG      0       15:43:08.450    Tester  successfully initialized
NN      0       15:43:08.450    Network 819 bytes of total initialization data received
HI      0       15:43:08.451    Tester  Intel Core i7-6700K  @ 4.00GHz, 16322 MB
KO      0       15:43:08.451    Symbols TESTER_EURUSD.rann_RannForex: symbol to be synchronized
NG      0       15:43:11.785    Symbols TESTER_EURUSD.rann_RannForex: symbol synchronized, 3464 bytes of symbol info received
PD      0       15:43:11.790    History TESTER_EURUSD.rann_RannForex: load 71 bytes of history data to synchronize in 0:00:00.001
RE      0       15:43:11.790    History TESTER_EURUSD.rann_RannForex: history synchronized from 2018.02.26 to 2019.01.25
PG      0       15:43:11.791    Ticks   TESTER_EURUSD.rann_RannForex: ticks synchronization started
HP      0       15:43:30.842    Ticks   TESTER_EURUSD.rann_RannForex: load 78 bytes of tick data to synchronize in 0:00:00.000
DN      0       15:43:30.842    Ticks   TESTER_EURUSD.rann_RannForex: history ticks synchronized from 2018.10.01 to 2019.01.25
HN      0       15:43:49.473    History TESTER_EURUSD.rann_RannForex,M1: history cache allocated for 344715 bars and contains 222311 bars from 2018.02.26 00:05 to 2018.09.28 23:54
JS      0       15:43:49.473    History TESTER_EURUSD.rann_RannForex,M1: history begins from 2018.02.26 00:05
DQ      0       15:43:49.485    Tester  TESTER_EURUSD.rann_RannForex,M1 (MetaQuotes-Demo): generating based on real ticks

....
KH      2       15:44:57.667    Tester  pumping of positions history failed
KM      0       15:50:31.746    Server  MetaTester 5 stopped


Еще желтым выделил 19-секундную паузу. Воспроизвести не получается, проблема происходит довольно редко.


ЗЫ Обращу внимание, что в логе Тестера о совершаемых сделках ни слова, а в логе Агента - все в них, как при полноценном проходе. Т.е. во время бэктеста данные графика баланса передавались, а лог действий советника - нет. Ну и в конце какая-то ошибка (красным) уже помечена самим Агентом.

 

Проблема здесь

Звоните без этой линии


 

Таким образом, работает. Смотри второй "клац" не заменен хорошо компилятором


 

Всем привет.
Подскажите плиз, есть ли в mql5 функции для распечатывания многомерных массивов или структур, типа php-шных print_r или var_dump?
Что то в документации ничего не получается найти подобного.
Вижу ArrayPrint(), но она не распечатывает структуры и сложные массивы.

Кто что использует для отладки?

 

А что значит эта строчка в журнале терминала, появившаяся после обновления 1973?

При выходе пишет это 

 
Juan Fernandez:

Проблема здесь

Звоните без этой линии

As I undestand, "clazz::clazz()" in your macro, will be expanded to "Test3::Test3(), not to "Test3::Test2()"

 
Andy:

А что значит эта строчка в журнале терминала, появившаяся после обновления 1973?

 

Означает ровно то же, что и до этого "exit initiated". Начало процесса остановки терминала

Так как терминал может завершаться с разными кодами после запуска с конфигурационным файлом, а также завершаться экспертом при помощи функции TerminalClose, то мы решили, что не мешает выводить код завершения терминала в лог

 
fxsaber:
Запустил одиночный прогон, получил в логе такое (это полный лог, без пропусков)

При этом вкладка "Бэктест" не появилась. Однако, вкладка, График есть, но оборванный:


Посмотрел лог соответствующего Агента. По нему видно, что проход выполнен полноценно (final balance, log written и т.д.). Однако, есть настораживающие строки


Еще желтым выделил 19-секундную паузу. Воспроизвести не получается, проблема происходит довольно редко.


ЗЫ Обращу внимание, что в логе Тестера о совершаемых сделках ни слова, а в логе Агента - все в них, как при полноценном проходе. Т.е. во время бэктеста данные графика баланса передавались, а лог действий советника - нет. Ну и в конце какая-то ошибка (красным) уже помечена самим Агентом.

В логах тестера о сделках ни слова может быть по той причине, что эксперт ничего не пишет в лог по этому поводу (либо ему перекрыли логгирование чем-то типа CTrade::LogLevel(LOG_LEVEL_NO))

Явна видна задержка в 19 секунд между аналогичными записями в логе вгента и в логе тестера

PD      0       15:43:11.790    History TESTER_EURUSD.rann_RannForex: load 71 bytes of history data to synchronize in 0:00:00.001
2019.01.27 15:43:30.842 Core 1  TESTER_EURUSD.rann_RannForex: load 71 bytes of history data to synchronize in 0:00:00.001

Обычно такие записи задерживаются максимум на 1 секунду. Ищите проблему в Вашей операционной системе