Bonjour les traders ! Aujourd'hui, je vais vous parler d'un outil très utile pour ceux qui commencent à programmer des indicateurs, ou pour ceux qui souhaitent simplement jeter un œil aux valeurs fournies par la fonction OnCalculate.
Cet indicateur a plusieurs fonctionnalités intéressantes :
1) Il affiche la valeur la plus récente fournie lors du dernier appel à OnCalculate.
2) Il montre la valeur précédente de l'appel OnCalculate précédent.
3) Il présente la première valeur obtenue lors de la première exécution de OnCalculate.
4) Il permet de visualiser la valeur de chaque série de tableaux, qu'elle soit en série ou non, avec la possibilité de changer la valeur en un clic sur l'affichage.
La version 1.10 a ajouté la possibilité de changer dynamiquement si les tableaux sont définis comme séries ou non - il suffit de cliquer sur le texte. De plus, les valeurs des barres visibles et de la première barre visible sont ajustées dynamiquement avec les modifications du graphique. L'affichage ON/OFF indique ce qui se passera avec ses réglages lors de la prochaine exécution de OnCalculate, par rapport à ce qui s'est passé lors de la dernière exécution.
Avec la version 1.20, on peut choisir de définir les tableaux comme as_series ou not_series, simplement en cliquant sur le texte. L'indicateur affiche maintenant les deux extrémités du tableau temporel ainsi que les deux extrémités du tampon iMA. Ces changements visent à clarifier la différence entre les tableaux as_series et not_series. De plus, l'affichage se rafraîchit lorsque nécessaire grâce au gestionnaire OnTimeEvent, ce qui réduit le temps d'exécution de OnCalculate de près de 300 ms à moins de 1 ms. Le code permettant de vérifier le temps d'exécution est conservé dans OnCalculate et peut être décommenté pour afficher les millisecondes d'exécution.
Voici une image montrant les valeurs que l'utilitaire OnCalculate_Values affiche. Notez les trois valeurs, séparées par '/', qui représentent la Valeur la Plus Récente, la Valeur Précédente et la Première Valeur. Les valeurs OnCalculate sont définies comme 'as_series' ou 'not_series' à chaque événement OnCalculate - lorsque Set Arrays est 'ON', sinon elles restent à la valeur par défaut du terminal.

Le code implémente une ligne d'indicateur unique, un tracé du prix d'ouverture de chaque barre fourni par iMA; le but est de fournir un tampon pour utiliser la fonction BarsCalculated et de montrer l'affichage d'un indicateur lorsqu'il est défini comme as_series ou not_series. En cliquant sur iMA_Val[0], le tampon iMA est défini comme as_series ou not_series une seule fois, lors du clic ; le tableau d'indicateur iMA n'est pas défini à chaque appel de OnCalculate.
Une collection de tableaux contient les propriétés de chaque objet d'affichage (OBJ_LABEL) dans l'affichage :

La fonction ArrayGetAsSeries est utilisée pour déterminer si les tableaux dans les paramètres OnCalculate sont des tableaux de séries temporelles ou non, et l'affichage montre le résultat (As_Series ou Not_Series) - l'affichage indique que ces tableaux ne sont pas des séries initialement, ou d'un appel à l'autre après avoir été définis comme séries. La fonction SetAsSeries les définit comme séries uniquement lorsqu'elle est activée, elle les laisse revenir à leur valeur par défaut lorsqu'elle est désactivée - elle ne définit pas 'as series' sur faux.
Le tableau à 3 membres, ary_OnCalcVals, contient 1) la Valeur la Plus Récente, 2) la Valeur Précédente, et 3) la Première Valeur trouvée dans les paramètres OnCalculate. Les fonctions CopyNewToOld et MoveNewTo prennent la valeur actuelle pour chaque paramètre d'affichage et la placent dans le stockage historique fourni par ary_OnCalcVals.
Articles connexes
- iMAX3 : Détecteur de Tendances Rapides pour Traders
- Découvrez l'indicateur Tymen STARC Bands MTF pour MetaTrader 5
- Affichez la tendance actuelle sur tous les délais avec un indicateur pour MetaTrader 4
- Améliorez vos graphiques avec ClearView : Indicateurs et modèles pour MetaTrader 5
- Découvrez l'Indicateur ZigZag Amélioré pour MetaTrader 4