Expert Advisors • Indicators • Scripts • Libraries

MQL.RobotFX.org is the biggest collection of MetaTrader expert advisors (MT5 & MT4), indicators, scripts and libraries that can be used to improve trading results, minimize risks or simply automate trading tasks

MetaTrader 4 Indicator | EURX - Finally, having found the calculation for the Euro Index - here it is

Real author:

Andy Thompson

Description:

In 2009 I published the indicator for DXY - Dollar Index - it was well received and downloaded many times in English and Russian. Now having found the definition of the Euro Index I submit this for the community's use and comment.

The definition can be found at Forex Ltd 

MetaTrader Experts, Indicators, Scripts and Libraries

//+------------------------------------------------------------------+  //|                                                   Euro Index.mq4 |  //|                                  Copyright © 2015, Andy Thompson |  //|                                   mailto:andydoc1@googlemail.com |  //+------------------------------------------------------------------+  #property copyright "Copyright © 2015, Andy Thompson"  #property link      "mailto:andydoc1@googlemail.com"  #property strict  #property indicator_separate_window  #property indicator_buffers 3  #property indicator_color1 Red  #property indicator_width1 2  #property indicator_color2 Yellow  #property indicator_width2 1  #property indicator_style2 1  #property indicator_color3 Lime  #property indicator_width3 1  #property indicator_style3 2  //---- buffers  double ExtMapBuffer1[];  double ExtMapBuffer2[];  double ExtMapBuffer3[];  int i;  extern int short_term_SMA_period=20;  extern int long_term_SMA_period =40;  //int winind;  //+------------------------------------------------------------------+  //| Custom indicator initialization function                         |  //+------------------------------------------------------------------+  int init()    {  //---- indicators     SetIndexStyle(0,DRAW_LINE);     SetIndexBuffer(0,ExtMapBuffer1);     SetIndexLabel(0,"DXY");     SetIndexStyle(1,DRAW_LINE);     SetIndexBuffer(1,ExtMapBuffer2);     SetIndexLabel(1,short_term_SMA_period+"SMA");     SetIndexStyle(2,DRAW_LINE);     SetIndexBuffer(2,ExtMapBuffer3);     SetIndexLabel(2,long_term_SMA_period+"SMA");     IndicatorShortName("Euro Index: EURX / "+short_term_SMA_period+"SMA / "+long_term_SMA_period+"SMA");  //----     return(0);    }  //+------------------------------------------------------------------+  //| Custom indicator deinitialization function                       |  //+------------------------------------------------------------------+  int deinit()    {  //----     return(0);    }  //+------------------------------------------------------------------+  //| Custom indicator iteration function                              |  //+------------------------------------------------------------------+  int start()    {     int counted_bars=IndicatorCounted();     if(counted_bars < 0)  return(-1);     if(counted_bars>0) counted_bars--;     int limit=Bars-counted_bars;     if(counted_bars==0) limit-=1+long_term_SMA_period;  //---- main loop     for(i=0; i<limit; i++)       {        ExtMapBuffer1[i]= 34.38805726*MathPow(iClose("EURUSD",0,i),0.3155)*MathPow(iClose("EURJPY",0,i),0.1891)*MathPow(iClose("EURGBP",0,i),0.3056)*MathPow(iClose("EURSEK",0,i),0.0785)*MathPow(iClose("EURCHF",0,i),0.1113);         }     for(i=0; i<limit; i++)       {        ExtMapBuffer2[i]=0;        ExtMapBuffer3[i]=0;        for(int z=0; z<long_term_SMA_period; z++)          {           if(z<short_term_SMA_period) ExtMapBuffer2[i]=ExtMapBuffer2[i]+ExtMapBuffer1[i+z];           ExtMapBuffer3[i]=ExtMapBuffer3[i]+ExtMapBuffer1[i+z];          }        ExtMapBuffer2[i] = ExtMapBuffer2[i]/short_term_SMA_period;        ExtMapBuffer3[i] = ExtMapBuffer3[i]/long_term_SMA_period;       }  //---- done     return(0);    }  //+------------------------------------------------------------------+  


Recommendations:

  • The periods for the moving averages can be changed - defaults are 20 and 40
  • The indicator will work on any chart and on any period
13862