ma_2MA_Slope_SigMA_roc

Author:
ma_2MA_Slope_SigMA_roc
Indicators Used
Moving average indicatorMoving average indicator
0 Views
0 Downloads
0 Favorites
ma_2MA_Slope_SigMA_roc
//+------------------------------------------------------------------+
//|                                        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);
}

Comments

Markdown supported. Formatting help

Markdown Formatting Guide

Element Markdown Syntax
Heading # H1
## H2
### H3
Bold **bold text**
Italic *italicized text*
Link [title](https://www.example.com)
Image ![alt text](image.jpg)
Code `code`
Code Block ```
code block
```
Quote > blockquote
Unordered List - Item 1
- Item 2
Ordered List 1. First item
2. Second item
Horizontal Rule ---