VininI_Trend_V7





//+------------------------------------------------------------------+
//|                                             Vinin HighLow v1.mq4 |
//|                                                  Victor Nicolaev |
//|                                                    vinin@mail.ru |
//+------------------------------------------------------------------+
#property copyright "Victor Nicolaev"
#property link      "vinin@mail.ru"


#property indicator_separate_window
#property indicator_buffers 2
#property indicator_color1 Green
#property indicator_color2 Red
//#property indicator_level1 0


extern int MA_Start=3;
extern int MA_Count=600;
extern int MA_Period=3;
extern int Limit=1440;
//---- buffers
double BufferUP[];
double BufferDN[];
double tmp[];
double MA[];
//+------------------------------------------------------------------+
//| Custom indicator initialization function                         |
//+------------------------------------------------------------------+
int init() {
//---- drawing settings
   IndicatorBuffers(4);
   SetIndexStyle(0,DRAW_HISTOGRAM);
   SetIndexStyle(1,DRAW_HISTOGRAM);
   SetIndexBuffer(0,BufferUP);
   SetIndexBuffer(1,BufferDN);
   SetIndexBuffer(2,MA);
   SetIndexBuffer(3,tmp);
   

   return(0); }//int init() 
   
//+------------------------------------------------------------------+
int start() {
   int limit1, limit2;
   int counted_bars=IndicatorCounted();
   int i,j;
   double sum,av;
   double Res;
   if(counted_bars<0) return(-1);
   if(counted_bars>0) counted_bars--;
   limit1=Bars-counted_bars;
   
   if (Limit>0) limit1=MathMin(Limit,limit1); 
   
   limit2=limit1;
   if (counted_bars==0) limit1=limit2+MA_Period;
   for (i = limit1;i>=0;i--){
      sum=0;
      Res=0;
      for (j=1;j<=MA_Count;j++) {
         Res+=(Close[i]-Close[j+i])*j;
      }
      MA[i]=Res/MA_Count;
   }
   for (i = limit2;i>=0;i--) {
      tmp[i]=iMAOnArray(MA,0,MA_Period,0,MODE_SMA,i);
      BufferUP[i]=0;
      BufferDN[i]=0;
      if (tmp[i]>tmp[i+1]) BufferUP[i]=tmp[i]; else BufferDN[i]=tmp[i];
   }
   

   return(0); 
}

   



Sample





Analysis



Market Information Used:

Series array that contains close prices for each bar


Indicator Curves created:

Implements a curve of type DRAW_HISTOGRAM


Indicators Used:

Moving average indicator


Custom Indicators Used:

Order Management characteristics:

Other Features: