Индикаторы: CCI-OnArray
У вас в реал-тайм происходит ошибка при расчете MA по массиву из-за прямого пересчета.
Др. словами, вам нужно заменить:
//---- MA counted in the last buffer for(i=0; i<limit; i++) Buf2[i]=iMA(NULL,0,MA,0,mode,price,i);На:
//---- MA counted in the last buffer for(i=limit; i>=0; i--) Buf2[i]=iMA(NULL,0,MA,0,mode,price,i);
Не верите? ))) Киньте вашу МА с прямым пересчетом на график цен вместе со стандартной и отнаблюдайте в реал тайме: после поступления новых баров начнутся расхождения. Т.е. будет так (синяя - стандартная EMA(3). красная - она же, но через iMA в цикле с прямым пересчетом):
То же касается и расчетов xxxOnArray, но здесь у вас ошибок нет.
Редко встретишь простую, но очень полезную разработку.
Тем кто разбирается. Полностью заменяет AdvancedGet Оsc. Причем можно настраивать по своему усмотрению как хочешь
CCI-OnArray:
Author: Victor Lukashuck