Почему не правильно выводит данные из индикатора?

 

Пытаюсь вывести данные из нидикатора, но то что

выводится не соответствует тому что на графике.

 int  t = 240;

double t100 = NormalizeDouble(iCustom(Symbol(),t,"TMA with Distances",0,0),4);

double t101 = NormalizeDouble(iCustom(Symbol(),t,"TMA with Distances",0,1),4);

double t110 = NormalizeDouble(iCustom(Symbol(),t,"TMA with Distances",1,0),4);

 Подскажите что изменить в индикаторе чтобы выводились те данные которые на

графике. 


Файлы:
 
liza:

Пытаюсь вывести данные из нидикатора, но то что

выводится не соответствует тому что на графике.

 int  t = 240;

double t100 = NormalizeDouble(iCustom(Symbol(),t,"TMA with Distances",0,0),4);

double t101 = NormalizeDouble(iCustom(Symbol(),t,"TMA with Distances",0,1),4);

double t110 = NormalizeDouble(iCustom(Symbol(),t,"TMA with Distances",1,0),4);

 Подскажите что изменить в индикаторе чтобы выводились те данные которые на

графике. 


И кто учил Вас так индикаторы писать?
 
Vinin:
И кто учил Вас так индикаторы писать?

Это не я писала.  Можете подсказать как вытащить

из индикатора выцисления чтобы их вставить в советник? 

 
liza:

Это не я писала.  Можете подсказать как вытащить

из индикатора выцисления чтобы их вставить в советник? 

Если индикатор перерисовывает, то вытаскивать бесполезно. Значения не будут совпадать
 
Vinin:
Если индикатор перерисовывает, то вытаскивать бесполезно. Значения не будут совпадать
не перерисовывает
 
liza:
не перерисовывает
Покажите код индикатора. Можно в личку
 
Прикрепила
Файлы:
 
liza:
Прикрепила

Я про индикатор "calculateTma" говорил. То что Вы ранее выложили - перерисовывает и так.

 

Я то же самое выложила.

Что Вы имеете ввиду?

Что за "calculateTMA"? 

 
liza:

Я то же самое выложила.

Что Вы имеете ввиду?

Что за "calculateTMA"? 

В том коде что Вы выложили есть соответствующие вызовы

  limit = MathMax(limit,MathMin(Bars-1,iCustom(NULL,timeFrame,indicatorFileName,"returnBars",0,0)*timeFrame/Period()));
   for(i=limit; i>=0; i--)
   {
      int y = iBarShift(NULL,timeFrame,Time[i]);
      buffer1[i] = iCustom(NULL,timeFrame,indicatorFileName,"calculateTma",HalfLength,Price,ATRMultiplier,ATRPeriod,0,y);
      buffer2[i] = iCustom(NULL,timeFrame,indicatorFileName,"calculateTma",HalfLength,Price,ATRMultiplier,ATRPeriod,1,y);
      buffer3[i] = iCustom(NULL,timeFrame,indicatorFileName,"calculateTma",HalfLength,Price,ATRMultiplier,ATRPeriod,2,y);
      trend[i]   = iCustom(NULL,timeFrame,indicatorFileName,"calculateTma",HalfLength,Price,ATRMultiplier,ATRPeriod,3,y);

 Извините. Разобрался. Идет Вызов в индикаторе самого себя.

 
liza:

Пытаюсь вывести данные из нидикатора, но то что

выводится не соответствует тому что на графике.

 int  t = 240;

double t100 = NormalizeDouble(iCustom(Symbol(),t,"TMA with Distances",0,0),4);

double t101 = NormalizeDouble(iCustom(Symbol(),t,"TMA with Distances",0,1),4);

double t110 = NormalizeDouble(iCustom(Symbol(),t,"TMA with Distances",1,0),4);

 Подскажите что изменить в индикаторе чтобы выводились те данные которые на

графике. 


Могу убрать перерисовку и сделать корректный расчет. Только боюсь что результат не понравится
Причина обращения: