Предложение MQ по экспертам

 
Предложение MQ по экспертам
Так как основная проблема сложных экспертов в нагрузке на
терминал при каждом тике может имеет смысл внести поравку в саму логику прграммирования экпертов?
Например:
Разделить эксперт на две части
-init
-onTickSection

В init части мы прграмируем начальную обработку массива баров и
выполняем настройку переменных и параметров , а в части OnTick..
выполняется небольшой код проверки значений бара и проверка переменных с небольшой адаптацией переменных.

Тогда в процессе работы код будет что-то типа
if PriceBid <= Vol1 then DoMyFunc
else Continue(Exit).
Процесс работы экспетов не будет нагружать терминал как сейчас,
когда он должен каждый раз обрабатывать массив баров и т.д.
 
некоторое количество наших экспертов и кастом индикаторов запрограммированы именно таким образом
 
Re:
В документации описано инициализация переменных, но насчет
тела кода, который не должен выполняться после первой загрузки - не видел. Если не сложно , дайте ссылку или пример кода.
BR .
 
А кто мешает использовать переменную, которая будет указывать - прошла инициализация или нет?
Объявляем var:isInitialized(0);

В эксперте проверяем:
if isInitialized=0 then {
<инициализируемся>
isInitialized=1;
}

и все.
Инициализация будет вызываться 1 раз, и проверка if не будет нагружать терминал.
 
например, в коде пользовательского индикатора Moving Average
переменная first отвечает за инициализацию.
объяснения по этому поводу есть на странице "особенности написания пользовательских индикаторов" https://www.metaquotes.net/en/metatrader5/algorithmic-trading в примере SimpleMA
Причина обращения: