//+------------------------------------------------------------------+ //| ma_2MA_Slope_smz_roc.mq4 | //| | //+------------------------------------------------------------------+ // 2mas roc sig ma #property copyright "" #property link "" #property indicator_separate_window #property indicator_buffers 4 #property indicator_color1 Blue #property indicator_color2 DodgerBlue // #property indicator_color3 Maroon #property indicator_color4 Red //#property indicator_width1 2 //#property indicator_width2 2 //#property indicator_minimum -350 //#property indicator_maximum 350 //#property indicator_level1 100 //#property indicator_level2 -100 //#property indicator_levelcolor DarkSlateGray extern int MA1_Period = 21; extern int MA1_Mode = 1; extern int MA1_Price = 0; extern int MA2_Period = 34; extern int MA2_Mode = 1; extern int MA2_Price = 0; extern int roc_length = 1; extern int SigMA_Period = 11; extern int SigMA_Mode = 1; double buffer1[]; double buffer2[]; double buffer11[]; double buffer21[]; double buffer12[]; double buffer22[]; //+------------------------------------------------------------------+ int init() { IndicatorBuffers(6); SetIndexBuffer(4,buffer1); SetIndexBuffer(0,buffer11); SetIndexBuffer(1,buffer12); SetIndexBuffer(5,buffer2); SetIndexBuffer(2,buffer21); SetIndexBuffer(3,buffer22); SetIndexLabel(0,"MA1 "+MA1_Period+" roc"); SetIndexLabel(1,"MA1rocSigMA "+SigMA_Period+""); SetIndexLabel(2,"MA2 "+MA2_Period+" roc"); SetIndexLabel(3,"MA2rocSigMA "+SigMA_Period+""); IndicatorShortName("MA roc ("+MA1_Period+","+MA2_Period+") SigMA ("+SigMA_Period+") "); 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; //limit=MathMax(limit,SigMA_Period); for(i=limit; i>=0; i--) { buffer1[i] =iMA(NULL,0,MA1_Period,0,MA1_Mode,MA1_Price,i); buffer2[i] =iMA(NULL,0,MA2_Period,0,MA2_Mode,MA2_Price,i); } for(i=limit; i>=0; i--) { if (buffer1[i]!=0) buffer11[i] = (buffer1[i]-buffer1[i+roc_length])/(buffer1[i]); if (buffer2[i]!=0) buffer21[i] = (buffer2[i]-buffer2[i+roc_length])/buffer2[i]; } for(i=limit; i>=0; i--) buffer12[i] = iMAOnArray(buffer11,0,SigMA_Period,0,SigMA_Mode,i); for(i=limit; i>=0; i--) buffer22[i] = iMAOnArray(buffer21,0,SigMA_Period,0,SigMA_Mode,i); return(0); }
Sample
Analysis
Market Information Used:
Indicator Curves created:
Indicators Used:
Moving average indicator
Custom Indicators Used:
Order Management characteristics:
Other Features: