Ошибки, баги, вопросы - страница 411

 
Renat:
Можете приложить результаты?
Подтверждаю, есть расхождения. Оптимизация через Cloud. Что именно приложить ?
 

Не пойму, это баг или одно из двух?

К тому, что во вкладке журнала в тестере много пропусков сообщений (по Print) при большом их потоке, я давно привык. Но в файл лога тестера попадают далеко не все выхлопы Print, даже когда их мало. Попробовал самый минимизированный код - создал шаблон и вставил в OnTick команду Print("t");

При запуске с EURUSD M1 "только цены открытия", "последний год" (т.е. с 1 янв по 8 июня) - в логе сообщения раз в неск. дней по неск. десятков тиков подряд. "За последний м-ц" (с 1 по 8 июня) - только ~с 19 ч. до 24 ч. 7 июня. И хорошая повторяемость, хотя и неточная - т.е. всё не случайно.

Я испугался - это что, такие пропуски тиков? Как жить? Это же эксперт не будет правильно работать, мягко говоря. Почему никто не замечает? Проверил на 2 компах, и в /portable тоже. Одинаково.

Выяснилось, что в логе локального агента все тики без пропусков! Вроде это для меня решает проблему, но непорядок же. Нестыковка. Может ввести в заблуждение ещё кого-нибудь.

Если этого не должно быть, и происходит только у меня, то почему? На всякий случай - у меня CoreQuad и W7.

Документация по MQL5: Стандартные константы, перечисления и структуры / Константы индикаторов / Ценовые константы
Документация по MQL5: Стандартные константы, перечисления и структуры / Константы индикаторов / Ценовые константы
  • www.mql5.com
Стандартные константы, перечисления и структуры / Константы индикаторов / Ценовые константы - Документация по MQL5
 
Dali:

Не пойму, это баг или одно из двух?

Выяснилось, что в логе локального агента все тики без пропусков! Вроде это для меня решает проблему, но непорядок же. Нестыковка. Может ввести в заблуждение ещё кого-нибудь.

Если этого не должно быть, и происходит только у меня, то почему? На всякий случай - у меня CoreQuad и W7.

Смотрите справку терминала, там все это описано - Справка по MetaTrader 5ТестерЖурнал:

  • В логи работы удаленных агентов не выводятся сообщения экспертов (функция Print()), а также сообщения о торговых операциях;
  • При тестировании в журнал выводятся сообщения самого эксперта, при оптимизации в журнале отражаются только номера проходов и результаты;
  • При большом потоке сообщений от агентов, часть из них может не выводится во вкладку "Журнал". Все записи могут быть просмотрены в *.log файлах агентов. При возникновении проблем с тестированием или оптимизацией необходимо смотреть именно эти лог файлы.
  • Для экономии дискового пространства записи журналов агентов, расположенные в каталоге tester/agent-*.*/logs, стираются по прошествии двух дней после генерации или при достижении размера в 1 гигабайт. Записи журнала самого тестера стратегий, расположенные в каталоге tester/logs/, удаляются по прошествии пяти дней после генерации.
 

Так в том-то и дело, что сообщения не попадают даже при маленьком потоке. Я пробовал и на M15, по 1 сообщению за бар - это большой поток? И даже пробовал выводить не в каждом баре, а при появлении сигнала. За текущий м-ц их должно было быть около 20 (навскидку). Выводится 3-4. За одни и те же дни.

То, что все эти сообщения есть в другом месте, я узнал случайно и самостоятельно, сначала сильно понервничав. Искать в хелпе косвенное подтверждение, что это известный баг (ну то есть это известная и описанная проблема) - последнее, что придёт в голову.

По-моему, это всё-таки проблема, и её надо решать. Например как в некоторых системах вывода логов:

tick 2011.06.01 19:00

tick 2011.06.01 19:01

tick 2011.06.01 19:02

< 123 аналогичных сообщений пропущено >

 
Dali:

Так в том-то и дело, что сообщения не попадают даже при маленьком потоке. Я пробовал и на M15, по 1 сообщению за бар - это большой поток? И даже пробовал выводить не в каждом баре, а при появлении сигнала. За текущий м-ц их должно было быть около 20 (навскидку). Выводится 3-4. За одни и те же дни.

То, что все эти сообщения есть в другом месте, я узнал случайно и самостоятельно, сначала сильно понервничав. Искать в хелпе косвенное подтверждение, что это известный баг (ну то есть это известная и описанная проблема) - последнее, что придёт в голову.

По-моему, это всё-таки проблема, и её надо решать. Например как в некоторых системах вывода логов:

tick 2011.06.01 19:00

tick 2011.06.01 19:01

tick 2011.06.01 19:02

< 123 аналогичных сообщений пропущено >

Нет никаких проблем...

Смотрите полный лог непосредственно в файлах...

 

Разработчикам.

1. Нормальный новигатор до чемпионата будет создан или как?

Реально не очень удобно работать с модулями где много классов или функций... :(

2. Есть (или планируется) сделать возможность работы с классами объектов помещенных в библиотеки (не в *.mqh а в *.ex5 или в любой другой компилируемый тип файлов)?

 
MONTEGRO:

Билд 463, ОС WinXP SP3.

 

Уже на протяжении нескольких билдов оптимизатор не работает должным образом. В процессе оптимизации, агенты переходят в состояние "finished" или "ready", а некоторые остаются в состоянии "busy" пока вручную не отключить / включить агенты, имеющие состояние "busy" (т.е. фактически процесс тестирования останавливается). После "рестарта" агентов в состоянии "busy" все остальные просыпаются и процесс продолжается до очередного затыка.

Билд 466, ОС WinXP SP3. Ничего не изменилось. Оптимизатор не работает нормально. Причём, чем больше работающих агентов, тем быстрее наступает "зависание" оптимизатора.

На текущий момент, я вижу еще несколько багов в терминале, но не напишу ни про один, пока оптимизатор не заработает нормально. 

 

Разработчикам.

А не кажется ли Вам что принудительное приведение к типу int тут не к месту (если конечно возвращается int, а не что-то иное)?

int OrdersLimit = (int)AccountInfoInteger(ACCOUNT_LIMIT_ORDERS);

А без такой добавки выводит предупреждение о возможной потери в данных...

 
Interesting:

Разработчикам.

А не кажется ли Вам что принудительное приведение к типу int тут не к месту (если конечно возвращается int, а не что-то иное)?

А без такой добавки выводит предупреждение о возможной потери в данных...


long возвращается...

https://www.mql5.com/ru/docs/account/accountinfointeger 

long OrdersLimit = AccountInfoInteger(ACCOUNT_LIMIT_ORDERS);
Документация по MQL5: Информация о счете / AccountInfoInteger
Документация по MQL5: Информация о счете / AccountInfoInteger
  • www.mql5.com
Информация о счете / AccountInfoInteger - Документация по MQL5
 
Manov:

long возвращается...

https://www.mql5.com/ru/docs/account/accountinfointeger

А вот это я из виду упустил. Нужно будет проверить в других местах и подправить код.
Причина обращения: