Новая версия платформы MetaTrader 5 build 2007: Экономический календарь, MQL5-программы в виде сервисов - страница 71

 

MT5 Build 2044

-----------------------------

При тестировании советника в режиме визуализации заметил такую штуку. Допустим нужно прогнать советник на том инструменте, где ни базовая валюта, ни котируемая не являются валютами депозита.

К примеру, валюта депозита = "USD", а текущий символ = "AUDNZD". В этом случае при запуске тестирования окно визуализатора просто зависает намертво. Кстати историю по нужным символам предварительно подкачал на всякий случай.

А вот если сделать так, что валюта депозита = "AUD" ||  "NZD" и  текущий символ = "AUDNZD", то всё работает.

 
Denis Kirichenko:

MT5 Build 2044

-----------------------------

При тестировании советника в режиме визуализации заметил такую штуку. Допустим нужно прогнать советник на том инструменте, где ни базовая валюта, ни котируемая не являются валютами депозита.

К примеру, валюта депозита = "USD", а текущий символ = "AUDNZD". В этом случае при запуске тестирования окно визуализатора просто зависает намертво. Кстати историю по нужным символам предварительно подкачал на всякий случай.

А вот если сделать так, что валюта депозита = "AUD" ||  "NZD" и  текущий символ = "AUDNZD", то всё работает.

я писал уже об этой ошибке. 

у меня тоже самое. 

 
Konstantin:

планируете ли вводить потоки? это одна из главных проблем терминала при сложных задачах, из-за которой приходится писать свои реализации терминалов, а МТ5 использовать в качестве бесплатного коннектора

Использование потоков из MQL кода не планируется.

Потоки помогают решать сложные задачи, каким образом ?
Конечно, в некоторых алгоритмах можно использовать (а можно и не использовать) многопоточность.

 
Denis Kirichenko:

MT5 Build 2044

-----------------------------

При тестировании советника в режиме визуализации заметил такую штуку. Допустим нужно прогнать советник на том инструменте, где ни базовая валюта, ни котируемая не являются валютами депозита.

К примеру, валюта депозита = "USD", а текущий символ = "AUDNZD". В этом случае при запуске тестирования окно визуализатора просто зависает намертво. Кстати историю по нужным символам предварительно подкачал на всякий случай.

А вот если сделать так, что валюта депозита = "AUD" ||  "NZD" и  текущий символ = "AUDNZD", то всё работает.

Зависает навечно или на какое-то время?

Зависает сам или после движений мышкой, переключением вкладок etc

Покажите логи клиентского терминала, тестера и тестерного агента на момент зависания

 
Vladislav Andruschenko:

я писал уже об этой ошибке. 

у меня тоже самое. 

Можно подробности?

Сходу не воспроизводится

 
Slava:

Можно подробности?

Сходу не воспроизводится


об этой ошибке мне написал пользователь.

вот что было: 

If the currency used for the account is not included in the currency pair to trade, it is possible for the strategy tester to get an error (task regected)
For example, if the currency of the account is EUR,

EURJPY No problem
GBPJPY error

If the currency of the account is USD,

USDCAD no problem
USDJPY No problem
EURAUD error

It will result in the above.




я начал тестировать у себя  и обнаружил, что даже MACD Sample иногда "не работает" как описано выше. 


Вчера начал получать ошибку истории. Отключил антивирус - некоторые валюты начали тестироваться. 

а вот если запустить такую оптимизацию:



То все повисло. И такое часто. 


только перезагрузка компьютера помогает. 


в логах пишет так:

CH      0       09:48:35.869    Core 6  connecting to 127.0.0.1:3005
NM      0       09:48:35.869    Core 6  connected
OO      0       09:48:36.011    Core 6  connection closed
MI      0       09:48:36.019    Core 6  connecting to 127.0.0.1:3005
HN      0       09:48:36.019    Core 6  connected
EL      0       09:48:36.057    Core 5  EURUSD: history for 2018 year synchronized
LD      0       09:48:36.130    Core 5  EURUSD: history for 2019 year synchronized
IG      0       09:48:36.130    Core 5  EURUSD: history synchronization completed [2388 Kb]
DR      0       09:48:36.130    Core 5  EURUSD: 2.33 Mb of history processed in 0:00.265
GD      2       09:48:36.153    Core 4  pass 12 on EURAUD tested with error "history processing error (02 EURUSD)" (0:00:01.704 + history synchronization 0:00:03.497)


LL      2       09:48:08.765    Core 4  pass 7 on AUDCAD tested with error "history processing error (02 USDCAD)" (0:00:01.095)


Первые сообщения были с марта месяца примерно такие:

Что ж, хотя это основная тема, недавно MT 5 обновился до Build 2007.
В то время, чтобы оптимизировать эту оптимизацию с помощью тестера стратегий с этим советником, произошла ошибка, и оптимизация не была выполнена должным образом. 


 
Vladislav Andruschenko:


об этой ошибке мне написал пользователь.

вот что было: 


я начал тестировать у себя  и обнаружил, что даже MACD Sample иногда "не работает" как описано выше. 


Вчера начал получать ошибку истории. Отключил антивирус - некоторые валюты начали тестироваться. 

а вот если запустить такую оптимизацию:



То все повисло. И такое часто. 


только перезагрузка компьютера помогает. 


в логах пишет так:


Запустите одиночное тестирование. Тогда в логе тестерного агента будет более подробная ошибка.

(02 EURUSD) означает, что не смог быть прочитан с диска какой-то из дневных контейнеров EURUSD из базы YYYY.hcs по одной из 6 возможных причин. Вот в логе агента и увидим, что за причина

 

some error after pass finished - это неверная формулировка (только вчера поправили)

Скорее всего это критическая ошибка в OnTester или OnDeinit. Из-за критической ошибки все остальные задания в пачке возвращаются для повторной переразадачи (task rejected by tester agent)

 
Ilyas:

Использование потоков из MQL кода не планируется.

Потоки помогают решать сложные задачи, каким образом ?
Конечно, в некоторых алгоритмах можно использовать (а можно и не использовать) многопоточность.

расчеты коинтеграции, корреляции и других статзадачь, кроме того удобно запустить в отдельном потоке thread.detach() весь алгоритм расчетов сигнальной модели, а GUI как и принято в основном потоке пусть крутится, таким образом две ресурсоемкие задачи будут работать в разных потоках и не грузить слабые VPS ресурсы

OpenCV в этом явно не поможет т.к. на VPS ресурсы GPU если и доступны по отдельным заявкам, то они явно дорогие

как пример у меня 4-5 копий роботов крутилось на одном терминале на VPS 2 ядра Xeon, 2 гиг ОЗУ, учитывая, что на VPS ресурсы делятся между клиентами в очереди, терминал грузил ЦПУ под 100%, пришлось использовать другой терминал как коннектор, а алгоритм уже на собственной сборке запускать, в итоге нагрузка на всю систему снизилась до 10-15%, в пиках до 25% и то из-за другого терминала

ps. дабы не было офтопом из-за упоминаний другого терминала - остановился не на МТ5 в то время, т.к. когда все писал, вы там со структурами и union мудрили и все периодически сыпалось, сейчас вот задумываюсь написать коннектор под МТ5, тем более сокеты вы там уже реализовали 

 
Slava:

Запустите одиночное тестирование. Тогда в логе тестерного агента будет более подробная ошибка.

(02 EURUSD) означает, что не смог быть прочитан с диска какой-то из дневных контейнеров EURUSD из базы YYYY.hcs по одной из 6 возможных причин. Вот в логе агента и увидим, что за причина


перезапустил компьютер

поставил тест по EURAUD 

вижу такое в истории: 

2019.05.16 12:14:34.126 Tester  EURAUD: ticks data begins from 2018.01.02 00:00
2019.05.16 12:14:34.126 Tester  EURUSD: ticks data begins from 2011.12.19 00:00
2019.05.16 12:14:34.126 Tester  AUDUSD: history data begins from 1999.01.05 00:00
2019.05.16 12:14:34.126 Tester  AUDUSD: ticks data begins from 2018.01.02 00:00
2019.05.16 12:14:34.126 Core 3  connecting to 127.0.0.1:3000
2019.05.16 12:14:34.127 Core 3  connected
2019.05.16 12:14:34.135 Core 3  authorized (agent build 2039)
2019.05.16 12:14:34.137 Tester  EURAUD,M30 (MetaQuotes-Demo): testing of 20190516.ex5 from 2019.01.01 00:00 to 2019.05.15 00:00
2019.05.16 12:14:34.140 Core 3  common synchronization completed
2019.05.16 12:14:34.287 Core 3  EURAUD: history for 2018 year synchronized
2019.05.16 12:14:34.341 Core 3  EURAUD: history for 2019 year synchronized
2019.05.16 12:14:34.341 Core 3  EURAUD: history synchronization completed [2859 Kb]
2019.05.16 12:14:34.341 Core 3  EURAUD: 2.79 Mb of history processed in 0:00.203
2019.05.16 12:14:36.271 Core 3  EURAUD: ticks synchronization [19328 Kb]
2019.05.16 12:14:42.962 Core 3  test Experts\Exp - TickSniper PRO FULL MT5 20190516.ex5 on EURAUD,M30 thread finished
2019.05.16 12:14:42.962 Core 3  prepare for shutdown
2019.05.16 12:14:42.962 Core 3  login (build 2039)
2019.05.16 12:14:42.962 Core 3  account info found with currency USD
2019.05.16 12:14:42.962 Core 3  24771 Mb available, 309 blocks set for ticks generating
2019.05.16 12:14:42.962 Core 3  initial deposit 10000.00 USD, leverage 1:100
2019.05.16 12:14:42.962 Core 3  successfully initialized
2019.05.16 12:14:42.962 Core 3  163 bytes of total initialization data received
2019.05.16 12:14:42.962 Core 3  Intel Core i7-6700  @ 3.40GHz, 32684 MB
2019.05.16 12:14:42.962 Core 3  EURAUD: load 2.79 Mb of history data to synchronize in 0:00:02.116
2019.05.16 12:14:42.962 Core 3  EURAUD: history synchronized from 2018.01.02 to 2019.05.15
2019.05.16 12:14:42.962 Core 3  EURAUD: ticks synchronization started
2019.05.16 12:14:48.186 Core 3  EURAUD: ticks synchronization [23357 Kb]
2019.05.16 12:15:02.612 Core 3  EURAUD: ticks synchronization [22985 Kb]
2019.05.16 12:15:17.416 Core 3  EURAUD: ticks synchronization completed [4387 Kb]
2019.05.16 12:15:20.245 Core 3  EURAUD: load 68.34 Mb of tick data to synchronize in 0:00:43.976
2019.05.16 12:15:20.245 Core 3  EURAUD: history ticks synchronized from 2019.01.02 to 2019.05.14
2019.05.16 12:15:20.245 Core 3  EURAUD: history data load error
2019.05.16 12:15:20.245 Core 3  EURAUD: there is no history. Please make sure that EURAUD history is available on the trade server
2019.05.16 12:15:20.245 Core 3  cannot get history EURAUD,M30


 

Запускаю тест по MACD SAMPLE


тоже самое:

2019.05.16 12:18:06.252 Core 3  login (build 2039)
2019.05.16 12:18:06.252 Core 3  account info found with currency USD
2019.05.16 12:18:06.252 Core 3  1482 bytes of tester parameters loaded
2019.05.16 12:18:06.252 Core 3  3260 bytes of input parameters loaded
2019.05.16 12:18:06.252 Core 3  expert file added: Experts\Examples\MACD\MACD Sample.ex5. 42687 bytes loaded
2019.05.16 12:18:06.252 Core 3  initial deposit 10000.00 USD, leverage 1:100
2019.05.16 12:18:06.252 Core 3  successfully initialized
2019.05.16 12:18:06.252 Core 3  42 Kb of total initialization data received
2019.05.16 12:18:06.252 Core 3  Intel Core i7-6700  @ 3.40GHz, 32684 MB
2019.05.16 12:18:06.252 Core 3  EURAUD: load 2.79 Mb of history data to synchronize in 0:00:01.808
2019.05.16 12:18:06.252 Core 3  EURAUD: history synchronized from 2018.01.02 to 2019.05.15
2019.05.16 12:18:06.252 Core 3  EURAUD: ticks synchronization started
2019.05.16 12:18:12.447 Core 3  EURAUD: ticks synchronization [23357 Kb]
2019.05.16 12:18:26.918 Core 3  EURAUD: ticks synchronization completed [19569 Kb]
2019.05.16 12:18:39.306 Core 3  EURAUD: load 60.73 Mb of tick data to synchronize in 0:00:39.141
2019.05.16 12:18:39.306 Core 3  EURAUD: history ticks synchronized from 2019.01.15 to 2019.05.14
2019.05.16 12:18:39.306 Core 3  EURAUD: history data load error
2019.05.16 12:18:39.306 Core 3  EURAUD: there is no history. Please make sure that EURAUD history is available on the trade server
2019.05.16 12:18:39.306 Core 3  cannot get history EURAUD,M30
2019.05.16 12:18:39.306 Core 3  log file "G:\ROBO MT5\Tester\Agent-127.0.0.1-3000\logs\20190516.log" written
2019.05.16 12:18:39.307 Core 3  connection closed


в логах агента следующее:

GH      0       12:17:58.240    127.0.0.1       login (build 2039)
CD      0       12:17:58.242    Tester  account info found with currency USD
QN      0       12:17:58.244    Network 1482 bytes of tester parameters loaded
LF      0       12:17:58.244    Network 3260 bytes of input parameters loaded
EN      0       12:17:58.325    Tester  expert file added: Experts\Examples\MACD\MACD Sample.ex5. 42687 bytes loaded
NO      0       12:17:58.328    Tester  initial deposit 10000.00 USD, leverage 1:100
MH      0       12:17:58.328    Tester  successfully initialized
HO      0       12:17:58.328    Network 42 Kb of total initialization data received
FG      0       12:17:58.328    Tester  Intel Core i7-6700  @ 3.40GHz, 32684 MB
DS      0       12:18:00.145    History EURAUD: load 2.79 Mb of history data to synchronize in 0:00:01.808
QM      0       12:18:00.145    History EURAUD: history synchronized from 2018.01.02 to 2019.05.15
JH      0       12:18:00.146    Ticks   EURAUD: ticks synchronization started
RM      0       12:18:39.277    Ticks   EURAUD: load 60.73 Mb of tick data to synchronize in 0:00:39.141
QG      0       12:18:39.277    Ticks   EURAUD: history ticks synchronized from 2019.01.15 to 2019.05.14
MD      2       12:18:39.302    History EURAUD: history data load error
KS      2       12:18:39.303    History EURAUD: there is no history. Please make sure that EURAUD history is available on the trade server
PM      2       12:18:39.303    Tester  cannot get history EURAUD,M30
KI      0       12:18:39.304    Tester  log file "G:\ROBO MT5\Tester\Agent-127.0.0.1-3000\logs\20190516.log" written
NE      0       12:18:39.306            test Experts\Examples\MACD\MACD Sample.ex5 on EURAUD,M30 thread finished
PN      0       12:18:45.407    127.0.0.1       prepare for shutdown



при этом на всех тиках (без реальных) - все проходит нормально. Вроде бы

Причина обращения: