Страница 1 из 1

Индикатор Elder Impulse System

Добавлено: 15 ноя 2020, 00:19
kemakeev
Прошу помочь. Нужен скрипт для Elder Impulse System

Re: Индикатор Elder Impulse System

Добавлено: 24 ноя 2020, 11:11
Maks
kemakeev писал(а):Прошу помочь. Нужен скрипт для Elder Impulse System

Код: Выделить всё

function Initialize() {
   IndicatorName = "ElderImpulseSystem";
   AddInput("Input", Inputs.Candle);
   PriceStudy = true;
   AddParameter("PeriodEMA", 13);
   AddParameter("Pfast", 12);
   AddParameter("Pslow", 26);
   AddParameter("Psig", 9);

   AddSeries("EISopen", DrawAs.Custom, Color.Green);   
   AddSeries("EISclose", DrawAs.Custom, Color.Red);   
}

function Evaluate() {
   // 11.2020 dev by Maks //

   EISopen = Input.Open[0];
   EISclose = Input.Close[0];

   if (CurrentIndex > 0) {
      double m0 = MACD(Input.Close, Pfast, Pslow, Psig).GetValue("Histogram", 0);
      double m1 = MACD(Input.Close, Pfast, Pslow, Psig).GetValue("Histogram", 1);
      double ema0 = EMA(Input.Close, PeriodEMA)[0];
      double ema1 = EMA(Input.Close, PeriodEMA)[1];
   
      if (m0 > m1 && ema0 > ema1) {
         if (EISopen < EISclose) {
            EISopen.DrawHistogram(EISclose, Color.Green, 100);
         } else {
            EISclose.DrawHistogram(EISopen, Color.Green, 100);
         }
      } else if (m0 < m1 && ema0 < ema1) {
         if (EISopen < EISclose) {
            EISopen.DrawHistogram(EISclose, Color.Red, 100);
         } else {
            EISclose.DrawHistogram(EISopen, Color.Red, 100);
         }
      } else {
         if (EISopen < EISclose) {
            EISopen.DrawHistogram(EISclose, Color.Blue, 100);
         } else {
            EISclose.DrawHistogram(EISopen, Color.Blue, 100);
         }
      }      
   }
}