2 вопроса разработчикам по Custom Indicator Program

 
2 вопроса разработчикам по Custom Indicator Program
1. Происходит ли дальнейший расчет значений Custom Indicator Program в случае "loop detected"? Вроде как происходит - визуально отображается весь график индикатора, хотя вывод строки в системный журнал с номером бара по Print(shift) - команда в теле цикла - прекращается. Для меня данная ситуация - непонятна.
2. Почему происходит постоянный пересчет значений пользовательского индикатора по всем барам инструмента - даже в отсутствие новых тиков и оффлайновой работе терминала? Сужу по той же команде Print(shift). Вот "выдержки" из системного журнала:
...
15:55:28 Expert 'Lb2': 4091
15:55:28 Expert 'Lb2': 4090
15:55:28 Expert 'Lb2': 4089
...
15:55:29 Expert 'Lb2': 304
15:55:29 Expert 'Lb2': 303
15:55:29 Expert 'Lb2': 302
15:55:29 Expert 'Lb2': loop detected (1012 ms, 2228224 instructions)
15:55:38 Expert 'Lb2': 4091
15:55:38 Expert 'Lb2': 4090
15:55:38 Expert 'Lb2': 4089
...
15:55:39 Expert 'Lb2': 304
15:55:39 Expert 'Lb2': 303
15:55:39 Expert 'Lb2': 302
15:55:39 Expert 'Lb2': loop detected (1011 ms, 2228224 instructions)
15:55:48 Expert 'Lb2': 4091
15:55:48 Expert 'Lb2': 4090
15:55:48 Expert 'Lb2': 4089
...
 
по вопросам
1. после сообщения loop detected эксперт дальше не работает. как Вы поняли что весь график индикатора посчитан? тут возможно несколько ситуаций. например, во время какого-либо запуска у Вас просчитался весь массив данных. возможно индикатор запрограммирован таким образом, чтобы при следующем запуске пересчитывать только недостающие значения (такой пример у нас есть). возможно индикатор считается "задом наперёд", тогда даже при loop detected Вы всегда будете иметь актуальное подмножество посчитанных значений (такой пример у нас тоже есть).
2. если Вы открываете автономно какой-либо график, а котировки по этому инструменту идут, то при очередной перерисовке графика терминал может определить, что количество отображённых баров и количество баров в файле hst не совпадает, то естественно терминал запустит рассчитывать всех экспертов и индикаторов, прикреплённых к этому графику. перерисовка любого окна происходит при активизации этого окна, либо когда было убрано перекрывающее окно. и этот момент никак не зависит от прихода тиков.
 
Спасибо за ответы
Причина обращения: