Auteur : dm34@mail.ru
L'indicateur UltraCCI repose sur le CCI (Commodity Channel Index) et analyse la direction des tendances à travers plusieurs lignes de signal. Son algorithme de calcul se base sur des paramètres d'entrée que voici :
- StartLength - valeur initiale minimale de la première ligne de signal ;
- Step - pas de changement de période ;
- StepsTotal - nombre total de changements de période.
Chaque valeur de période parmi les lignes de signal est calculée via une progression arithmétique :
SignalPeriod(Number) = StartLength + Number * Step
où la variable Number varie de zéro à StepsTotal. Les valeurs obtenues sont stockées dans un tableau et utilisées à chaque tick de l'indicateur pour obtenir un ensemble de valeurs lissées du RSI. La direction actuelle de la tendance pour chaque lissage est calculée, ainsi que le nombre de tendances positives et négatives pour l'ensemble des valeurs CCI lissées. Le nombre final de tendances est ensuite lissé et utilisé comme lignes de l'indicateur, formant un nuage de couleur grâce à la classe de style DRAW_FILLING.
La direction de la tendance dans cet indicateur est déterminée par la couleur du nuage, tandis que sa force est indiquée par la largeur du nuage. Vous pouvez également définir des niveaux de surachat (UpLevel) et de survente (DnLevel) exprimés en pourcentage par rapport à l'amplitude maximale de l'indicateur.
De plus, l'indicateur permet de déterminer la vitesse de changement de la force de la tendance, affichée sous forme de points colorés. Si la puissance de la tendance augmente, la couleur de ces points correspond à celle du nuage, sinon, les points seront colorés de manière opposée.
Vous avez le choix parmi dix algorithmes de lissage :
- SMA - moyenne mobile simple ;
- EMA - moyenne mobile exponentielle ;
- SMMA - moyenne mobile lissée ;
- LWMA - moyenne mobile pondérée linéaire ;
- JJMA - moyenne adaptative JMA ;
- JurX - lissage ultra-linéaire ;
- ParMA - lissage parabolique ;
- T3 - lissage exponentiel multiple de Tillson ;
- VIDYA - lissage utilisant l'algorithme de Tushar Chande ;
- AMA - lissage selon l'algorithme de Perry Kaufman.
Il est important de noter que les paramètres de phase pour les différents algorithmes de lissage ont des significations complètement différentes. Par exemple, pour le JMA, il s'agit d'une variable externe Phase variant de -100 à +100, tandis que pour le T3, c'est un ratio de lissage multiplié par 100 pour une meilleure visualisation. Pour le VIDYA, c'est la période de l'oscillateur CMO, et pour l'AMA, c'est la période de l'EMA lente. Dans les autres algorithmes, ces paramètres n'affectent pas le lissage. Pour l'AMA, la période de l'EMA rapide est une valeur fixe égale à 2 par défaut.
L'indicateur utilise les classes de la bibliothèque SmoothAlgorithms.mqh (à copier dans le dossier terminal_data_folder\MQL5\Include). L'utilisation de ces classes a été détaillée dans l'article "Averaging Price Series for Intermediate Calculations Without Using Additional Buffers".
Paramètres d'entrée de l'indicateur :
//+----------------------------------------------+ //| Paramètres d'entrée de l'indicateur | //+----------------------------------------------+ input int CCI_Period=13; // Période de l'indicateur CCI input ENUM_APPLIED_PRICE Applied_price=PRICE_CLOSE; // Prix appliqué //---- input Smooth_Method W_Method=MODE_JJMA; // Méthode de lissage input int StartLength=3; // Période de lissage initiale input int WPhase=100; // Paramètre de lissage //---- input uint Step=5; // Pas 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 //---- input uint UpLevel=80; // Niveau de surachat, %% input uint DnLevel=20; // Niveau de survente, %% input color UpLevelsColor=DarkViolet; // Couleur du niveau de surachat input color DnLevelsColor=DarkViolet; // Couleur du niveau de survente input STYLE Levelstyle=DASHDOTDOT_; // Style des niveaux input WIDTH LevelsWidth=Width_1; // Largeur des niveaux //+----------------------------------------------+

Articles connexes
- Découvrez l'indicateur Tymen STARC Bands MTF pour MetaTrader 5
- Découvrez l'indicateur 3 en 1 Stochastic pour MetaTrader 5
- Découvrez l'Indicateur Donchian Ultimate pour MT5 : Un Outil Indispensable pour les Traders
- Découvrez le 3XMA_Ichimoku : Un Indicateur Incontournable pour MetaTrader 5
- Découvrez l'indicateur Ultra Spearman Rank Correlation pour MetaTrader 5