В MACD подставить свою цену – как?

 

Здравствуйте!

Пишу эксперта – и вот такой вопрос в формуле MACD




double  iMACD(

   string       symbol,           // имя символа

   int          timeframe,        // таймфрейм

   int          fast_ema_period,  // период быстрой средней

   int          slow_ema_period,  // период медленной средней

   int          signal_period,    // период сигнальной линии

   int          applied_price,    // тип цены

   int          mode,             // индекс линии индикатора

   int          shift             // сдвиг

   );

Нет возможности указания цены – можно только указать, какую цену из готовых массивов использовать, скажем PRICE_CLOSE. А мне нужно каким то образам в индикатор сунуть другую цену (мне нужно определить цену при которой индикатор перевернется и вывести её как отдельный уровень). Вопрос – как это сделать? В папке experts/indicators есть файл MACD.mqh но там внутри все вызов iMA в которую так же нельзя передать значение свой, произвольной цены отличной от Close[i]. Элементу массива Close[i] я тоже не могу присвоить значение – такой код не прокатывает:

Close[i] = 4.5666;

Вопрос кто виноват оставим на потом, меня куда более интересует - что делать?

 

свой индикатор писать на основе формулы расчёта MACD:


MACD = EMA(CLOSE, 12)-EMA(CLOSE, 26)

SIGNAL = SMA(MACD, 9)


 
ну тогда надо сначала свою скользящую среднюю написать ... а потом на основании этих скользящих средних уже свой MACD. Так что ли? И по другому никак? Тогда меня начинает уже мучить вопрос - кто виноват? :)
 
iMAOnArray к своим данным надо применить.
Причина обращения: