Почему в выходные не все индикаторы производят первый пересчёт?

 

 Я заметил, что есть индикаторы, в том числе и мои, а это все индикаторы, которые рассчитывают и отображают или не отображают, а лишь хранят только свои рассчёты, которые при накидывании на график торгового инструмента, просчитывают все бары и прекращают работу т.к. тиков нет. Т.е. происходит первоначальный расчёт без дальнейших итераций. Это понятно. Но, я призадумался над этим. Почему вообще когда нет тиков индикатор что-то делает? Ведь функция OnCalculate() запускается при наступлении нового тика. Или всё-таки в справке чего-то не дописано?

Вопрос появился потому что в индикаторах, которые не используют другие индикаторы в рассчётах всё нормально. Накинул на график в выходной и всё отобразилось, что нужно. А вот если индикатор использует несколько индикаторов для своих расчётов, то возникает странная ситуация. Ничего не отоюражается. Хотя, когда рынок открыт, всё отображается. В выходных - нет. Разве что в тестере если прогнать индюк, то всё тоже отображается и рассчитывается. Но это не вариант.

 
Расчеты нужно делать в таймере, тогда всё будет считаться и отображаться без котировок. 
Или вручную нажимать "Обновить чарт".
 
В качестве эксперимента при каждом захода в OnCalculate () распечатывайте такие значения: rates_total, prev_calculate. Проведите несколько тестов: накиньте индикатор на график, смените таймфрейм, смените символ графика, перезагрузите терминал.
 
Taras Slobodyanik:
Расчеты нужно делать в таймере, тогда всё будет считаться и отображаться без котировок. 
Или вручную нажимать "Обновить" чарт.

Я об этом тоже подумал. На OnCalculate() я так понимаю вообще забить что-ли? Таймер зарядить по.. времени около 1 секунды и вопрос снят. Верно?

 
Viktar Dzemikhau:

Я об этом тоже подумал. На OnCalculate() я так понимаю вообще забить что-ли? Таймер зарядить по.. времени около 1 секунды и вопрос снят. Верно?

В общем да.

Если индикатор использует несколько ТФ/Символов, то МТ5 не успевает сразу сгенерировать всем историю, а индикатор всё посчитать - вот и не отображается... ждёт пока придет следующий тик.

 
Taras Slobodyanik:

В общем да.

Если индикатор использует несколько ТФ/Символов, то МТ5 не успевает сразу сгенерировать всем историю, а индикатор всё посчитать - вот и не отображается... ждёт пока придет следующий тик.

Спасибо, за уточнение. Я так же думал. Написал лишь, что бы уточнить. Это вполне логично. И да, у меня и символ и таймфрейм может быть разный. Сложно, но что же поделаешь ((

 

правой мышкой "обновить" на графике кликните - вызовется OnCalculate()

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