Как ускорить расчет кастомного индикатора с помощью INDICATOR_CALCULATIONS?

 

Здравствуйте. Сделал свой индикатор, в расчет которого вошли расчеты нескольких индикаторов. Сам индикатор в итоге рассчитывается долго и сложно оптимизировать советника с такими расчетами. Можете подсказать пожалуйста, как можно его ускорить? Я так понял, что мне может помочь INDICATOR_CALCULATIONS, но как правильно использовать данный буфер в собственном индикаторе. У меня вся суть индикатора находится в 2 функциях расчета.

if(pred_calculation == 0)
{
 Start(.....);
 ResultBuffer[rates_total - 1] = Result(.....);
}
else
{
 ResultBuffer[rates_total - 1] = Result(.....);
}
 

INDICATOR_CALCULATIONS - это всего лишь тип буфера, никак он не поможет в ускорении исполнения кода. 

Чтобы программа работала быстрее, всегда было два распространённых решения - более быстрое железо, или оптимизация кода. В случает с МТ4 железо уже давно избыточно (ну если вы не сидите до сих пор на древнем Семпроне 500МГц с 512 Гб ОЗУ), так что остаётся оптимизация кода. Выкиньте лишнее, будет работать быстрее.

 
Vitalie Postolache:

INDICATOR_CALCULATIONS - это всего лишь тип буфера, никак он не поможет в ускорении исполнения кода. 

Чтобы программа работала быстрее, всегда было два распространённых решения - более быстрое железо, или оптимизация кода. В случает с МТ4 железо уже давно избыточно (ну если вы не сидите до сих пор на древнем Семпроне 500МГц с 512 Гб ОЗУ), так что остаётся оптимизация кода. Выкиньте лишнее, будет работать быстрее.

Есть еще один способ: уменьшить параметр макс. баров в окне терминала (в случае, если индикатор рассчитывается на всей доступной истории).