Accueil Indicateur technique Publication

UltraMFI : l'indicateur incontournable pour MetaTrader 5

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

Auteur : Dmitriy.

Vous êtes trader et vous cherchez à améliorer vos analyses ? L'indicateur UltraMFI pourrait bien être votre nouvel allié. Basé sur le Money Flow Index (MFI), cet indicateur analyse plusieurs lignes de signal pour vous donner une vue d'ensemble précise du marché.

Comment fonctionne l'UltraMFI ?

Les paramètres d'entrée de l'indicateur sont les suivants :

  • StartLength - valeur initiale minimale de la première ligne de signal ;
  • Step - étape de variation de période ;
  • StepsTotal - nombre de variations de période.

Pour chaque période, la valeur est calculée selon une progression arithmétique :

SignalPeriod(Number) = StartLength + Number * Step,

Number varie de zéro à StepsTotal. Ces valeurs sont ensuite intégrées dans un tableau et utilisées à chaque tick pour obtenir les valeurs lissées de l'indicateur de Larry Williams' Percent Range. Les directions de tendance actuelles pour chaque lissage sont calculées, tout comme le nombre de tendances positives et négatives pour l'ensemble du tableau des valeurs MFI lissées.

Le résultat final des tendances est lui aussi lissé et utilisé pour tracer des lignes d'indicateur qui forment un nuage de couleur, affiché grâce à la classe DRAW_FILLING.

Interprétation des signaux

La direction de tendance dans cet indicateur est déterminée par la couleur du nuage, tandis que sa puissance est indiquée par la largeur du nuage. Vous pouvez également utiliser les niveaux de surachat (UpLevel) et de survente (DnLevel) qui sont définis en pourcentage par rapport à l'intervalle maximum de l'indicateur.

Méthodes de lissage disponibles

UltraMFI vous offre plusieurs algorithmes de lissage parmi lesquels choisir :

  1. SMA - moyenne mobile simple ;
  2. EMA - moyenne mobile exponentielle ;
  3. SMMA - moyenne mobile lissée ;
  4. LWMA - moyenne mobile pondérée linéaire ;
  5. JJMA - moyenne adaptative JMA ;
  6. JJurX - moyenne ultralinéaire ;
  7. ParMA - moyenne parabolique ;
  8. T3 - lissage exponentiel multiple de Tillson ;
  9. VIDYA - lissage selon l'algorithme de Tushar Chande ;
  10. AMA - lissage selon l'algorithme de Perry Kaufman.

Il est important de noter que les paramètres Phase1 et Phase2 ont des significations complètement différentes selon les algorithmes de lissage. Pour le JMA, c'est une variable externe passant de -100 à +100. Pour le T3, il s'agit d'un ratio de lissage multiplié par 100 pour une meilleure visualisation. Pour le VIDYA, il représente la période de l'oscillateur CMO, et pour l'AMA, c'est la période de la moyenne mobile lente. Ces paramètres n'influencent pas le lissage dans les autres algorithmes. Pour l'AMA, la période de l'EMA rapide est fixée par défaut à 2.

L'indicateur utilise les classes de la bibliothèque SmoothAlgorithms.mqh (à copier dans <répertoire_données_terminal>\MQL5\Include). Les classes sont décrites en détail dans l'article Moyennage des séries de prix pour des calculs intermédiaires sans utiliser de tampons supplémentaires.

//+----------------------------------------------+
//| Paramètres d'entrée de l'indicateur       |
//+----------------------------------------------+
input int MFI_Period=13;                            // Période de l'indicateur MFI
input ENUM_APPLIED_VOLUME VolumeType=VOLUME_TICK;   // Volume de l'indicateur MFI
//----
input Smooth_Method W_Method=MODE_JJMA; // Méthode de lissage
input int StartLength=3;                // Période d'averaging initiale
input int WPhase=100;                   // Paramètre de lissage
// pour JJMA, il varie de -100 à +100 et influence la qualité de la période transitoire ;
// Pour VIDIA, c'est la période CMO, pour AMA, c'est la période de la moyenne mobile lente
//----  
input uint Step=5;        // Étape de changement de période
input uint StepsTotal=10; // Nombre de changements de période
//----
input Smooth_Method SmoothMethod=MODE_JJMA; // Méthode de lissage
input int SmoothLength=3;                   // Profondeur de lissage                    
input int SmoothPhase=100;                  // Paramètre de lissage
// pour JJMA, il varie dans la plage -100 ... +100 et influence la qualité de la période transitoire ;
//----                          
input uint UpLevel=80;            // Niveau de surachat en %%
input uint DnLevel=20;            // Niveau de survente en %%
input color UpLevelsColor=Blue;   // Couleur du niveau de surachat
input color DnLevelsColor=Blue;   // Couleur du niveau de survente
input STYLE Levelstyle=DASH_;     // Style des niveaux
input WIDTH LevelsWidth=Width_1; // Largeur des niveaux
//+----------------------------------------------+

Fig. 1. L'indicateur UltraMFI

Fig. 1. L'indicateur UltraMFI

Articles connexes

Commentaire (0)