Discussion de l'article "Comment créer un indicateur personnalisé Heiken Ashi en utilisant MQL5"

 

Un nouvel article Comment créer un indicateur personnalisé Heiken Ashi en utilisant MQL5 a été publié :

Dans cet article, nous allons apprendre à créer un indicateur personnalisé à l'aide de MQL5 pour l'utiliser dans MetaTrader 5 pour nous aider à lire les graphiques ou pour l'utiliser dans les Expert Advisors automatisés.

Les graphiques Heiken Ashi sont similaires aux graphiques techniques à bougies normaux, mais le calcul pour tracer ces bougies est différent. Il existe en effet 2 méthodes différentes. Comme nous le savons, le graphique en chandeliers normal calcule les prix sur la base des cours d'ouverture, de clôture et de clôture au cours d'une période donnée, mais le Heiken Ashi prend en considération les cours similaires précédents (cours d'ouverture, de clôture, de clôture et de clôture) lorsqu'il calcule ses chandelles.

Voici comment sont calculées les valeurs pertinentes pour le Heiken Ashi :

  • Ouverture = (ouverture de la bougie précédente + fermeture de la bougie précédente) / 2
  • Close = (open + close + high + low de la bougie actuelle) / 4
  • Haut = la valeur la plus élevée du haut, de l'ouverture ou de la fermeture de la période en cours
  • Bas = la valeur la plus basse du bas, de l'ouverture ou de la clôture de la période en cours

Selon sa formule de calcul, l'indicateur construit des chandeliers haussiers et baissiers, et les couleurs de ces chandeliers indiquent la direction du marché : si elle est haussière ou baissière. L'exemple ci-dessous montre les chandeliers japonais traditionnels et le Heiken Ashi, ce qui permet de voir la différence d'un point de vue visuel.

Auteur : Mohamed Abdelmaaboud

 

Déclaration- Définition

Salut,
je vois que tu utilises pour la programmation orientée objet les membres OnInit(),- OnDenit(),- OnTick().
Mais la déclaration- ou l'initialisation des variables, comme par exemple double heikenAshiOpen[]... n'appartient-elle pas une fois pour toutes à OnInit()- et par conséquent l'évaluation des variables (définition), tout comme les variables objet, fastEMA- et slowEMA dans le ticker ?

 

En principe oui, mais pas ici, car les variables perdraient à nouveau leurs valeurs en quittant la ou les fonctions. Cherche un peu : site:mql5.com scope variable

et lire : https://www.mql5.com/en/docs/basis/variables/variable_scope

Documentation on MQL5: Language Basics / Variables / Visibility Scope and Lifetime of Variables
Documentation on MQL5: Language Basics / Variables / Visibility Scope and Lifetime of Variables
  • www.mql5.com
Visibility Scope and Lifetime of Variables - Variables - Language Basics - MQL5 Reference - Reference on algorithmic/automated trading language for MetaTrader 5
 

Deklaration- Definition

Salut,
je vois que tu utilises les membres OnInit(),- OnDenit(),- OnTick() pour la programmation orientée objet.
Mais la déclaration- ou l'initialisation des variables, comme par exemple le double délicatAshiOpen[]... n'appartient-elle pas une fois pour toutes à OnInit()- et par conséquent l'évaluation des variables (définition), tout comme les variables objet, fastEMA- et slowEMA dans le ticker ?

Je pense la même chose que Carlo. Les tableaux dans

OnInit()

ne sont chargés que lors du chargement de l'EA et du changement de timeframe.

Parce que la valeur change à chaque tick.

Et pour l'indicateur, le

OnCalculate

calculer.

 
Excellent article. Merci de votre attention.