Извините, пожалуйста, но где вы увидели здесь разговоры про функцию OnInit().
Это моя личная интерпретация прочитанного, с которой можно соглашаться или нет, но слово "старты" можно понимать по-всякому, у меня лично ассоциация с функцией OnInit() в данном случае возникает, хотя, не спорю, что это зависит от того, кто какие функции использует.
Подскажите пожалуйста, какая разница между функциями:
intStart() voidStart() voidOnStart() voidOnTick() и т.д. какие ещё есть старты?
Это же всё относится к стартам, почему они все разные, в чём особенность?
Встретился с проблемой в советнике когда высокий поток тиков, то Start при поступлении нового тика обрывает работу предыдущего Starta и просто часть кода может не выполниться и запускает снова.
Заметил я это когда у меня при открытии новой свечи должна была сетка ордеров открыться ровно 10 ордеров. Тоесть имеем 1 тик при открытии свечи и программа побежала выполняться и когда стал замечать, то 3 ордера откроется, то 9, то 5. Вот и понял что при быстром потоке тиков это происходит.
Переписал всё в OnTick и проблема ушла, поступаемый новый тик игнорировался, пока не доделается код от текущего OnTick и только когда код обработался, OnTick принимает новый тик.
OnTick не сработает при запуске советника, только при поступлении тика, тут нужен ещё OnInit
Для авторизации и пользования сайтом MQL5.com необходимо разрешить использование файлов Сookie.
Пожалуйста, включите в вашем браузере данную настройку, иначе вы не сможете авторизоваться.
Вы вошли в аккаунт. Двухфакторная аутентификация отключена. Настройте её заново и отсканируйте новый QR-код или продолжите с отключённой двухфакторной аутентификацией.
Извините, пожалуйста, но где вы увидели здесь разговоры про функцию OnInit().
Подскажите пожалуйста, какая разница между функциями:
void Start()
void OnStart()
void OnTick()
и т.д. какие ещё есть старты?
Это же всё относится к стартам, почему они все разные, в чём особенность?
Встретился с проблемой в советнике когда высокий поток тиков, то Start при поступлении нового тика обрывает работу предыдущего Starta и просто часть кода может не выполниться и запускает снова.
Заметил я это когда у меня при открытии новой свечи должна была сетка ордеров открыться ровно 10 ордеров. Тоесть имеем 1 тик при открытии свечи и программа побежала выполняться и когда стал замечать, то 3 ордера откроется, то 9, то 5. Вот и понял что при быстром потоке тиков это происходит.
Start срабатывает при запуске терминала/советника и дальше срабатывает на каждый тик
Переписал всё в OnTick и проблема ушла, поступаемый новый тик игнорировался, пока не доделается код от текущего OnTick и только когда код обработался, OnTick принимает новый тик.
OnTick не сработает при запуске советника, только при поступлении тика, тут нужен ещё OnInit
Вот вся разница.