//+------------------------------------------------------------------+
//|                                                    Moving Average Dots.mq4 |
//| Places a dot of the moving average on the actual bar                                               |
//|                                                                  |
//| original idea by Jose Silva                                      |
//+------------------------------------------------------------------+


#property indicator_chart_window
#property indicator_buffers 4
#property indicator_color1 Gold
//#property indicator_color2 C'70,0,0'
//#property indicator_color3 Red
//#property indicator_color4 Gold
#property indicator_width1 1
//#property indicator_width2 3
//#property indicator_width3 2
//#property indicator_width4 2

//
//
//
//
//

extern int       MA1Period=1;
extern int       MA1Method=MODE_SMA;
extern int       MA1Price =PRICE_TYPICAL;
//extern int       MA2Period=26;
//extern int       MA2Method=MODE_SMA;
//extern int       MA2Price =PRICE_CLOSE;

//
//
//
//
//

double buffer1[];
double buffer2[];
double buffer3[];
double buffer4[];

//+------------------------------------------------------------------+
//|                                                                  |
//+------------------------------------------------------------------+
//
//
//
//
//

int init()
{
   SetIndexBuffer(0,buffer3); SetIndexStyle(0,DRAW_ARROW);
   //SetIndexBuffer(0,buffer3); SetIndexStyle(1,STYLE_DASH);
   SetIndexArrow(0,119);
   //SetIndexBuffer(1,buffer4); SetIndexStyle(1,DRAW_ARROW);
   //SetIndexArrow(0,159);
   SetIndexBuffer(2,buffer1);
  //SetIndexBuffer(3,buffer2);
   return(0);
}
int deinit()
{
   return(0);
}

//+------------------------------------------------------------------+
//|                                                                  |
//+------------------------------------------------------------------+
//
//
//
//
//

int start()
{
   int counted_bars=IndicatorCounted();
   int limit,i;
   
   if(counted_bars<0) return(-1);
   if(counted_bars>0) counted_bars--;
           limit=Bars-counted_bars;

   //
   //
   //
   //
   //

   for(i=limit; i>=0; i--)
   {
      buffer1[i] = iMA(NULL,0,MA1Period,0,MA1Method,MA1Price,i);
     // buffer2[i] = iMA(NULL,0,MA2Period,0,MA2Method,MA2Price,i);
      buffer3[i] = buffer1[i];
      buffer4[i] = buffer2[i];
   }
   return(0);
}

