/*
   G e n e r a t e d  by ex4-to-mq4 decompiler FREEWARE 4.0.509.5
   Website:  h t T P:// w W W. Me tA Q uOte s . nEt
   E-mail : sUPPO RT @me TaQU O t E s.NeT
*/

#property indicator_separate_window
#property indicator_minimum 1.0
#property indicator_maximum 3.0
#property indicator_buffers 6
#property indicator_color1 Blue
#property indicator_color2 Red
#property indicator_color3 Yellow
#property indicator_color4 Blue
#property indicator_color5 Red
#property indicator_color6 Yellow

int G_period_76 = 5;
int G_ma_method_80 = MODE_EMA;
int G_applied_price_84 = PRICE_CLOSE;
int G_period_88 = 15;
int G_ma_method_92 = MODE_EMA;
int G_applied_price_96 = PRICE_CLOSE;
int G_period_100 = 8;
int G_period_104 = 17;
int G_period_108 = 9;
int G_period_112 = 14;
int G_period_116 = 14;
double G_ibuf_120[];
double G_ibuf_124[];
double G_ibuf_128[];
double Gda_132[];
double Gda_136[];
double Gda_140[];
double G_ima_144;
double G_ima_152;
double G_ima_160;
double G_ima_168;
double G_ima_176;
double G_ima_184;
double G_imacd_192;
double G_imacd_200;
double G_iadx_208;
double G_iadx_216;
double G_irsi_224;
color G_color_232 = Blue;
color G_color_236 = Red;
color G_color_240 = Yellow;
int Gi_unused_244 = 241;
int Gi_unused_248 = 242;
int Gi_unused_252 = 243;
int Gi_256 = 2;
int Gi_unused_260 = 2;
int Gi_unused_264 = 1;
double Gd_unused_268 = 0.6;

int init() {
   SetIndexStyle(0, DRAW_HISTOGRAM, STYLE_SOLID, Gi_256, G_color_232);
   SetIndexBuffer(0, G_ibuf_120);
   SetIndexStyle(1, DRAW_HISTOGRAM, STYLE_SOLID, Gi_256, G_color_236);
   SetIndexBuffer(1, G_ibuf_124);
   SetIndexStyle(2, DRAW_HISTOGRAM, STYLE_SOLID, Gi_256, G_color_240);
   SetIndexBuffer(2, G_ibuf_128);
   IndicatorShortName("Oracle Strength");
   return (0);
}

int deinit() {
   return (0);
}

int start() {
   int Li_0 = IndicatorCounted();
   if (Li_0 < 0) return (-1);
   if (Li_0 > 0) Li_0--;
   int Li_4 = Bars - Li_0;
   for (int Li_8 = Li_4 - 1; Li_8 >= 0; Li_8--) {
      G_ima_144 = iMA(NULL, 0, G_period_76, 0, G_ma_method_80, G_applied_price_84, Li_8);
      G_ima_152 = iMA(NULL, 0, G_period_76, 0, G_ma_method_80, G_applied_price_84, Li_8 + 1);
      G_ima_160 = iMA(NULL, 0, G_period_76, 0, G_ma_method_80, G_applied_price_84, Li_8 - 1);
      G_ima_168 = iMA(NULL, 0, G_period_88, 0, G_ma_method_92, G_applied_price_96, Li_8);
      G_ima_176 = iMA(NULL, 0, G_period_88, 0, G_ma_method_92, G_applied_price_96, Li_8 + 1);
      G_ima_184 = iMA(NULL, 0, G_period_88, 0, G_ma_method_92, G_applied_price_96, Li_8 - 1);
      G_imacd_192 = iMACD(Symbol(), Period(), G_period_100, G_period_104, G_period_108, PRICE_CLOSE, MODE_MAIN, Li_8);
      G_imacd_200 = iMACD(Symbol(), Period(), G_period_100, G_period_104, G_period_108, PRICE_CLOSE, MODE_SIGNAL, Li_8);
      G_iadx_208 = iADX(NULL, 0, G_period_116, PRICE_CLOSE, MODE_PLUSDI, Li_8);
      G_iadx_216 = iADX(NULL, 0, G_period_116, PRICE_CLOSE, MODE_MINUSDI, Li_8);
      G_irsi_224 = iRSI(NULL, 0, G_period_112, PRICE_CLOSE, Li_8);
      G_ibuf_120[Li_8] = EMPTY_VALUE;
      G_ibuf_124[Li_8] = EMPTY_VALUE;
      G_ibuf_128[Li_8] = EMPTY_VALUE;
      Gda_132[Li_8] = EMPTY_VALUE;
      Gda_136[Li_8] = EMPTY_VALUE;
      Gda_140[Li_8] = EMPTY_VALUE;
      if (G_irsi_224 > 50.0 && G_imacd_192 > G_imacd_200 && G_iadx_208 > G_iadx_216) G_ibuf_120[Li_8] = 2.5;
      else {
         if (G_irsi_224 < 50.0 && G_imacd_192 < G_imacd_200 && G_iadx_208 < G_iadx_216) G_ibuf_124[Li_8] = 2.5;
         else G_ibuf_128[Li_8] = 2.5;
      }
   }
   return (0);
}
