//+------------------------------------------------------------------+
//|                                     Moving_Average_Slope_0.7.mq4 |
//|                                              Profit_Warning 2010 |
//+------------------------------------------------------------------+

#property copyright "elcctroo @ 2010"
#property link      ""

#property indicator_separate_window
#property indicator_buffers 2
#property indicator_color1 Magenta
#property indicator_color2 Orange

#property indicator_level1 0

//---- input parameters
extern int Suavizacion=4;

//---- buffers
double SUMmed[];
double SUAV[];

//+------------------------------------------------------------------+
//| Custom indicator initialization function                         |
//+------------------------------------------------------------------+
int init()
  {
   string short_name;


//---- 1 additional buffer used for counting.
   IndicatorBuffers(2);
//---- indicator line
   SetIndexBuffer(0,SUMmed);SetIndexStyle(0,DRAW_LINE);SetIndexLabel(0,"SUMmed");
   SetIndexBuffer(1,SUAV);SetIndexStyle(1,DRAW_LINE);SetIndexLabel(1,"SUAV");
//---- name for DataWindow and indicator subwindow label
   short_name="SUMmed         ";
   IndicatorShortName(short_name);
//----
   return(0);
  }
//+------------------------------------------------------------------+
//| Average True Range                                               |
//+------------------------------------------------------------------+
int start()
  {
   double A,B,C,D,E;
   double A1,B1,C1,D1,E1;
   double A2,B2,C2,D2,E2;
   double A3,B3,C3,D3,E3;
   double A4,B4,C4,D4,E4;
   double paso;
   int i,k,SUA,counted_bars=IndicatorCounted();
   SUA=Suavizacion;
//----

//----
   i=Bars-counted_bars-1;
   while(i>=0)
     {
     //----  2, 3, 5, 7, 11, 13, 17, 19, 23, 29, 31, 37, 41, 43, 47, 53, 59, 61, 67, 71, 73, 79, 83, 89, 97
     
     // ULIZAMOS MEDIAS EXPONENCIALES DE VALORES 3,5,7,11 y 13.
     
       A  = iMA(NULL,0,3,0,MODE_LWMA,PRICE_MEDIAN,i)-iMA(NULL,0,5,0,MODE_LWMA,PRICE_MEDIAN,i);
       A1 = iMA(NULL,0,3,0,MODE_LWMA,PRICE_MEDIAN,i)-iMA(NULL,0,7,0,MODE_LWMA,PRICE_MEDIAN,i);
       A2 = iMA(NULL,0,3,0,MODE_LWMA,PRICE_MEDIAN,i)-iMA(NULL,0,11,0,MODE_LWMA,PRICE_MEDIAN,i);
       A3 = iMA(NULL,0,3,0,MODE_LWMA,PRICE_MEDIAN,i)-iMA(NULL,0,13,0,MODE_LWMA,PRICE_MEDIAN,i);
       A4 = iMA(NULL,0,3,0,MODE_LWMA,PRICE_MEDIAN,i)-iMA(NULL,0,17,0,MODE_LWMA,PRICE_MEDIAN,i);
       
       B  = iMA(NULL,0,5,0,MODE_LWMA,PRICE_MEDIAN,i)-iMA(NULL,0,7,0,MODE_LWMA,PRICE_MEDIAN,i);
       B1 = iMA(NULL,0,5,0,MODE_LWMA,PRICE_MEDIAN,i)-iMA(NULL,0,11,0,MODE_LWMA,PRICE_MEDIAN,i);
       B2 = iMA(NULL,0,5,0,MODE_LWMA,PRICE_MEDIAN,i)-iMA(NULL,0,13,0,MODE_LWMA,PRICE_MEDIAN,i);
       B3 = iMA(NULL,0,5,0,MODE_LWMA,PRICE_MEDIAN,i)-iMA(NULL,0,17,0,MODE_LWMA,PRICE_MEDIAN,i);

       C  = iMA(NULL,0,7,0,MODE_LWMA,PRICE_MEDIAN,i)-iMA(NULL,0,11,0,MODE_LWMA,PRICE_MEDIAN,i);
       C1 = iMA(NULL,0,7,0,MODE_LWMA,PRICE_MEDIAN,i)-iMA(NULL,0,13,0,MODE_LWMA,PRICE_MEDIAN,i);
       C2 = iMA(NULL,0,7,0,MODE_LWMA,PRICE_MEDIAN,i)-iMA(NULL,0,17,0,MODE_LWMA,PRICE_MEDIAN,i);
       
       D  = iMA(NULL,0,11,0,MODE_LWMA,PRICE_MEDIAN,i)-iMA(NULL,0,13,0,MODE_LWMA,PRICE_MEDIAN,i);
       D1 = iMA(NULL,0,11,0,MODE_LWMA,PRICE_MEDIAN,i)-iMA(NULL,0,17,0,MODE_LWMA,PRICE_MEDIAN,i);
       
       E = iMA(NULL,0,11,0,MODE_LWMA,PRICE_MEDIAN,i)-iMA(NULL,0,17,0,MODE_LWMA,PRICE_MEDIAN,i);
       
       SUMmed[i]= A+A1+A2+A3+A4 + B+B1+B2+B3 + C+C1+C2 + D+D1 + E ;
 
     //----
      i--;
     }
//----
 
for( i=0 ; i<Bars-counted_bars-1 ; i++ ){SUAV[i] = iMAOnArray(SUMmed, Bars-1, SUA,0,MODE_LWMA, i);}

//----
   return(0);
  }
//+------------------------------------------------------------------+