Скачать MetaTrader 5

Почему срабатывает OnCalculate по выходным, когда нет тиков?

Авторизуйтесь или зарегистрируйтесь, чтобы добавить комментарий
Сергей
534
Сергей  

В справке сказано:

Событие Calculate генерируется только для индикаторов сразу после посылки события Init и при любом изменении ценовых данных. Обрабатывается функцией OnCalculate.

Но ведь тики не приходят, это видно в окне "Тики", а индикаторы дергаются. То, что OnCalculate срабатывает видно, если вставить в его тело Print.

И видно, что дергается серверное время, с 00:00 на 23:00. Может быть, это причина?

Разработчики, пожалуйста, обратите внимание!!

o_o
Модератор
23915
o_o  
falkov:

В справке сказано:

Но ведь тики не приходят, это видно в окне "Тики", а индикаторы дергаются. То, что OnCalculate срабатывает видно, если вставить в его тело Print.

И видно, что дергается серверное время, с 00:00 на 23:00. Может быть, это причина?

Разработчики, пожалуйста, обратите внимание!!

то есть по-вашему когда кидаешь любой индикатор на экран, то никаких отрисовок быть не должно? индикатор должен ждать первого тика, чтоб отрисовать буфера?
Документация по MQL5: Стандартные константы, перечисления и структуры / Константы индикаторов / Линии индикаторов
Документация по MQL5: Стандартные константы, перечисления и структуры / Константы индикаторов / Линии индикаторов
  • www.mql5.com
Стандартные константы, перечисления и структуры / Константы индикаторов / Линии индикаторов - Документация по MQL5
Сергей
534
Сергей  

Еще раз, в справке сказано:

Событие Calculate генерируется только для индикаторов сразу после посылки события Init и при любом изменении ценовых данных. Обрабатывается функцией OnCalculate.

т.е. он отрисуется сразу после Init и должен ждать тиков, точнее говоря, изменений ценовых данных.

o_o
Модератор
23915
o_o  
falkov:

Еще раз, в справке сказано:

т.е. он отрисуется сразу после Init и должен ждать тиков, точнее говоря, изменений ценовых данных.

еще раз, повторюсь:

вы предлагаете, что когда кидаешь индикатор на экран, то никаких отрисовок быть не должно? индикатор должен ждать первого тика, чтоб рассчитать буфера?

Yedelkin
4532
Yedelkin  
sergeev:

еще раз, повторюсь:

вы предлагаете, что когда кидаешь индикатор на экран, то никаких отрисовок быть не должно? индикатор должен ждать первого тика, чтоб рассчитать буфера?

Из процитированного falkov'ым следует, что "при кидании индикатора на экран (график)"  первый тик (для отрисовки) генерируется сразу после посылки события Init. Ждать тиков  от изменения ценовых данных не приходится.
Сергей
534
Сергей  

Ребята, вы вообще о чем?!

Я же два раза процитировал справку!

Там четко написано, что событие Calculate возникает сразу после Init.

И это легко проверяется вставкой Print в Init.

После компиляции и после смены ТФ оно возникает. Какие тут вопросы?!


Другое дело, что оно еще должно возникать после изменений ценовых данных. Когда торговля разрешена, идут тики и там все нормально.

Но по выходным тиков нет, а Calculate все-равно возникает. Почему?

В МТ4 такого не было, и пришлось писать скрипт для эмуляции тиков.

И, кстати, я ничего не предлагаю, а спрашиваю (см. заголовок темы)

Документация по MQL5: Программы MQL5 / События клиентского терминала
Документация по MQL5: Программы MQL5 / События клиентского терминала
  • www.mql5.com
Программы MQL5 / События клиентского терминала - Документация по MQL5
Yedelkin
4532
Yedelkin  
falkov:

Ребята, вы вообще о чем?!

Я же два раза процитировал справку!

Да я, в общем-то, просто изложил Вашу позицию иными словами. Так что множественное число в обращении - излишне :) Возможно, единственная моя оплошность в том, что событие  Calculate назвал тиком (в русле общего обсуждения).
Сергей
534
Сергей  

Да, Вы правы. Прошу извинения.

Хотелось бы услышать разработчиков, но, наверное, сегодня они заслуженно отдыхают :)

Yedelkin
4532
Yedelkin  
falkov:

Хотелось бы услышать разработчиков ...

Разработчики не раз говорили, что надёжнее - обратиться в сервисдеск. Там уж точно можно стопроцентно дождаться ответа и обсудить вопрос.
Общайтесь с разработчиками через Сервисдеск!
Общайтесь с разработчиками через Сервисдеск!
  • www.mql5.com
Ваше сообщение сразу станет доступно нашим отделам тестирования, технической поддержки и разработчикам торговой платформы.
Сергей
534
Сергей  

Это, конечно, так.

Но непонятно, это вообще баг или это фича, в смысле, так и задумано :)

Ладно, на сегодня я закончил, пошел домой :)


Yedelkin
4532
Yedelkin  
falkov:

Это, конечно, так.

Но непонятно, это вообще баг или это фича, в смысле, так и задумано :)

Вот там и ответят :) А Вы сможете продублировать здесь, если будет интересно.
12
Авторизуйтесь или зарегистрируйтесь, чтобы добавить комментарий