#property indicator_chart_window
#property indicator_buffers 2
#property indicator_color1 SeaGreen
#property indicator_color2 Red

double G_ibuf_76[];
double G_ibuf_80[];
extern int FasterEMA = 5;
extern int SlowerEMA = 6;
extern bool SoundON = TRUE;
extern bool EmailON = TRUE;
double Gd_100;
double Gd_unused_108 = EMPTY_VALUE;

int init() {
   SetIndexStyle(0, DRAW_ARROW, EMPTY, 3);
   SetIndexArrow(0, 217);
   SetIndexBuffer(0, G_ibuf_76);
   SetIndexStyle(1, DRAW_ARROW, EMPTY, 3);
   SetIndexArrow(1, 218);
   SetIndexBuffer(1, G_ibuf_80);
   return (0);
}

int deinit() {
   return (0);
}

int start() {
   int Li_8;
   double ima_12;
   double ima_20;
   double ima_28;
   double ima_36;
   double ima_44;
   double ima_52;
   double Ld_60;
   double Ld_68;
   int Li_76 = IndicatorCounted();
   if (Li_76 < 0) return (-1);
   if (Li_76 > 0) Li_76--;
   int Li_0 = Bars - Li_76;
   for (int Li_4 = 0; Li_4 <= Li_0; Li_4++) {
      Li_8 = Li_4;
      Ld_60 = 0;
      Ld_68 = 0;
      for (Li_8 = Li_4; Li_8 <= Li_4 + 9; Li_8++) Ld_68 += MathAbs(High[Li_8] - Low[Li_8]);
      Ld_60 = Ld_68 / 10.0;
      ima_12 = iMA(NULL, 0, FasterEMA, 0, MODE_EMA, PRICE_CLOSE, Li_4);
      ima_28 = iMA(NULL, 0, FasterEMA, 0, MODE_EMA, PRICE_CLOSE, Li_4 + 1);
      ima_44 = iMA(NULL, 0, FasterEMA, 0, MODE_EMA, PRICE_CLOSE, Li_4 - 1);
      ima_20 = iMA(NULL, 0, SlowerEMA, 0, MODE_EMA, PRICE_OPEN, Li_4);
      ima_36 = iMA(NULL, 0, SlowerEMA, 0, MODE_EMA, PRICE_OPEN, Li_4 + 1);
      ima_52 = iMA(NULL, 0, SlowerEMA, 0, MODE_EMA, PRICE_OPEN, Li_4 - 1);
      if (ima_12 > ima_20 && ima_28 < ima_36 && ima_44 > ima_52) G_ibuf_76[Li_4] = Low[Li_4] - Ld_60 / 2.0;
      else
         if (ima_12 < ima_20 && ima_28 > ima_36 && ima_44 < ima_52) G_ibuf_80[Li_4] = High[Li_4] + Ld_60 / 2.0;
      if (SoundON == TRUE && Li_4 == 1 && G_ibuf_76[Li_4] > G_ibuf_80[Li_4] && Gd_100 != Time[0]) {
         Alert("H1 Chart Trend going Down on ", Symbol(), " ", Period());
         Gd_100 = Time[0];
      }
      if (EmailON == TRUE && Li_4 == 1 && G_ibuf_76[Li_4] > G_ibuf_80[Li_4] && Gd_100 != Time[0]) SendMail("H1 Chart Trend going Down on " + Symbol() + " ", Period());
      if (SoundON == TRUE && Li_4 == 1 && G_ibuf_76[Li_4] < G_ibuf_80[Li_4] && Gd_100 != Time[0]) {
         Alert("H1 Chart Trend going Up on ", Symbol(), " ", Period());
         Gd_100 = Time[0];
      }
      if (EmailON == TRUE && Li_4 == 1 && G_ibuf_76[Li_4] < G_ibuf_80[Li_4] && Gd_100 != Time[0]) SendMail("H1 Chart Trend going Up on " + Symbol() + " ", Period());
   }
   return (0);