проблема с icustom

 

при выводе значения индикатора на нулевом баре icustom возвращает значения,несовпадающие с графиком индикатора.Если вызывать на первом баре,то такого не происходит.
Использую его на M15.Например вот так: вывод на первом баре: 17. 45(значение совп. с графиком);на нулевом: 18.00(не совпадает),хотя эта точка графика уже окончательно сформировалась,вызов icustom происходит на первом тике нового бара,в чем может быть причина?

 

Предполагаю, что то что вы видите на графике это уже окончательный измененный результат. А то, что вы вызываете кастомом это текущее состояние значения в период вызова. А вообще не плохо было бы вытащить код индюка и советника тогда все сразу будет понятно.

 

Это происходит с любым индикатором CCI,RSI,если вызывать их через icustom,а делаю я это так:
int start()
{
if(NB()==1)
{
SFUOS=iCustom(NULL,0,"CCI",14,0,1);
SFZL=iCustom(NULL,0,"CCI",14,0,0);
Print("Точка 1:::" ,SFUOS);
Print("Точка 0:::" ,SFZL);

}
return(0);
}
//+------------------------------------------------------------------+
int NB()
static datetime prevtime=0;
{
if (prevtime==Time[0]) return(0);
else
{
prevtime=Time[0];
return(1);
}
}
Да,возможно,но как тогда получить значение последней сформировавшейся точки,которая должна быть последним значением индикатора на последнем уже закрытом баре,если смещаться на 1,то выводится значение,стоящее на 15 мин раньше нужного,а если брать с 0,то вообще неверно.

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