//+--------------------------------------+
//|            WINPRO TRADING            |
//|                Kijun                 |
//|                                      |
//+--------------------------------------+

// rolsdon@gmail.com 
// Queensland,Australia.

#property indicator_chart_window
#property indicator_buffers 1
#property indicator_color1 Yellow

extern int Kijun=50;
extern int ShiftKijun=3;

double Kijun_Buffer[];

int a_begin;
int init()
  {
   SetIndexStyle(0,DRAW_LINE);
   SetIndexBuffer(0,Kijun_Buffer);
   SetIndexDrawBegin(0,Kijun+ShiftKijun-1);
   SetIndexShift(0,ShiftKijun);
   SetIndexLabel(0,"Winpro Kijun+");

   return(0);
  }
int start()
  {
   int    i,k;
   int    counted_bars=IndicatorCounted();
   double high,low,price;

   if(Bars<=Kijun) return(0);
   if(counted_bars<1)
     {
      for(i=1;i<=Kijun;i++)     Kijun_Buffer[Bars-i]=0;
     }
   i=Bars-Kijun;
   if(counted_bars>Kijun) i=Bars-counted_bars-1;
   while(i>=0)
     {
      high=High[i]; low=Low[i]; k=i-1+Kijun;
      while(k>=i)
        {
         price=High[k];
         if(high<price) high=price;
         price=Low[k];
         if(low>price) low=price;
         k--;
        }
      Kijun_Buffer[i+ShiftKijun]=(high+low)/2;
      i--;
     } i=ShiftKijun-1;
   while(i>=0)
     {
      high=High[0]; low=Low[0]; k=Kijun-ShiftKijun+i;
      while(k>=0)
        {
         price=High[k];
         if(high<price) high=price;
         price=Low[k];
         if(low>price) low=price;
         k--;
        }
      Kijun_Buffer[i]=(high+low)/2;
      i--;
     }
   }

