Мультивалютный советник МТ5, значение bid текущего тика различается в обзоре рынка и по функции SymbolInfoTick (и SymbolInfoDouble) , если советник не на графике этого символа - страница 2

 
Konstantin Efremov:

UPD: Да, сделал задержку перед получением значения тика и всё получилось, тики получает корректно. Спасибо огромное, Алексей!

Да не за что. Не могли бы уточнить, а что Вы исправили задержкой? Тот факт, что тики повторяются?

 
Alexey Kozitsyn:

Да не за что. Не могли бы уточнить, а что Вы исправили задержкой? Тот факт, что тики повторяются?

Да. Тики приходят раз в 2 секунды всегда, это не валюты. Как вы правильно заметили, при обработке OnTick не все инструменты давали новое значение тика, задержка в 10мс решила проблему, теперь всё актуально, как в обзоре рынка. Я еще поиграю с задержкой, может и 3-4мс хватит

 
Konstantin Efremov:

Да. Тики приходят раз в 2 секунды всегда, это не валюты. Как вы правильно заметили, при обработке OnTick не все инструменты давали новое значение тика, задержка в 10мс решила проблему, теперь всё актуально, как в обзоре рынка. Я еще поиграю с задержкой, может и 3-4мс хватит

Устанавливая задержку, Вы тем самым "тормозите" момент получения тиков. Т.е. если Вы получаете тики в OnTick(), эксперт лучше ставить на самый часто тикающий символ и запоминать последний обработанный тик по каждому символу. Тогда Вы точно не повторите обработку ранее обработанного тика.

Но для мультивалютников, конечно, лучше делать обработку логики в OnTimer() с высокой частотой если хотите обрабатывать максимум тиков.

 
Konstantin Efremov:

Причем здесь стакан? 

Потому что стакан, получает информация отдельным потоком и не зависит от того, на каком графике он запущен.

 
Konstantin Efremov:

Вот это может быть! Спасибо, буду думать как обойти. Попробую через таймер.


UPD: Да, сделал задержку перед получением значения тика и всё получилось, тики получает корректно. Спасибо огромное, Алексей!

Только я про неродной символ сказал сразу, и сразу сказал как правильно делать, но вы решили не слышать.

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