
#property indicator_chart_window
#property indicator_buffers 1
#property indicator_color1 Green

extern int Kijun = 10;
int Gi_80 = 0;
double G_ibuf_84[];

// E37F0136AA3FFAF149B351F6A4C948E9
int init() {
   SetIndexStyle(0, DRAW_LINE);
   SetIndexBuffer(0, G_ibuf_84);
   SetIndexDrawBegin(0, Kijun + Gi_80 - 1);
   SetIndexShift(0, Gi_80);
   SetIndexLabel(0, "Kijun Sen+");
   return (0);
}

// EA2B2676C28C0DB26D39331A336C6B92
int start() {
   double Dd_12;
   double Dd_20;
   double Dd_28;
   int ind_counted_8 = IndicatorCounted();
   if (Bars <= Kijun) return (0);
   if (ind_counted_8 < 1) for (int Di_0 = 1; Di_0 <= Kijun; Di_0++) G_ibuf_84[Bars - Di_0] = 0;
   Di_0 = Bars - Kijun;
   if (ind_counted_8 > Kijun) Di_0 = Bars - ind_counted_8 - 1;
   while (Di_0 >= 0) {
      Dd_12 = High[Di_0];
      Dd_20 = Low[Di_0];
      for (int Di_4 = Di_0 - 1 + Kijun; Di_4 >= Di_0; Di_4--) {
         Dd_28 = High[Di_4];
         if (Dd_12 < Dd_28) Dd_12 = Dd_28;
         Dd_28 = Low[Di_4];
         if (Dd_20 > Dd_28) Dd_20 = Dd_28;
      }
      G_ibuf_84[Di_0 + Gi_80] = (Dd_12 + Dd_20) / 2.0;
      Di_0--;
   }
   for (Di_0 = Gi_80 - 1; Di_0 >= 0; Di_0--) {
      Dd_12 = High[0];
      Dd_20 = Low[0];
      for (Di_4 = Kijun - Gi_80 + Di_0; Di_4 >= 0; Di_4--) {
         Dd_28 = High[Di_4];
         if (Dd_12 < Dd_28) Dd_12 = Dd_28;
         Dd_28 = Low[Di_4];
         if (Dd_20 > Dd_28) Dd_20 = Dd_28;
      }
      G_ibuf_84[Di_0] = (Dd_12 + Dd_20) / 2.0;
   }
   return (0);
}
