Accueil Indicateur technique Publication

Découvrez l'Indicateur EURX : Le Nouvel Indice Euro pour MetaTrader 4

Pièce jointe
13862.zip (212.86 KB, Télécharger 0 fois)

Auteur : Andy Thompson

Description :

En 2009, j'ai publié un indicateur pour le DXY - l'indice du dollar - qui a été très bien accueilli et téléchargé de nombreuses fois. Aujourd'hui, je suis ravi de partager avec vous la définition de l'indice Euro, que j'ai enfin réussi à établir, afin de l'offrir à notre communauté de traders.

 

Vous pouvez trouver la définition complète sur Forex Ltd.


EURX


//+------------------------------------------------------------------+
//|                                                   Indice Euro.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;
//+------------------------------------------------------------------+
//| Initialisation de l'indicateur                         |
//+------------------------------------------------------------------+
int init()
  {
//---- indicateurs
   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("Indice Euro : EURX / "+short_term_SMA_period+"SMA / "+long_term_SMA_period+"SMA");
//----
   return(0);
  }
//+------------------------------------------------------------------+
//| Fonction de désinitialisation de l'indicateur                       |
//+------------------------------------------------------------------+
int deinit()
  {
//----
   return(0);
  }
//+------------------------------------------------------------------+
//| Fonction d'itération de l'indicateur                              |
//+------------------------------------------------------------------+
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;
//---- boucle principale
   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;
   }
//---- terminé
   return(0);
  }
//+------------------------------------------------------------------+

 

Recommandations :

  • Les périodes pour les moyennes mobiles peuvent être modifiées - les valeurs par défaut sont 20 et 40.
  • L'indicateur fonctionnera sur n'importe quel graphique et sur n'importe quelle période.

Articles connexes

Commentaire (0)