Indicateur MACD de William Blau : Convergence et Divergence des Moyennes Mobiles

Mike 2011.07.08 01:56 63 0 0
Pièce jointe

Auteur : Andrey N. Bolkonsky

L'indicateur de convergence/divergence des moyennes mobiles (MACD) développé par William Blau est présenté dans son livre Momentum, Direction, and Divergence: Applying the Latest Momentum Indicators for Technical Analysis.

Le signe du MACD indique la position relative de la moyenne mobile exponentielle (EMA) rapide de période s par rapport à l'EMA lente de période r. Il est positif lorsque EMA(s) > EMA(r) et négatif si EMA(s)

  • Placez WilliamBlau.mqh dans le dossier terminal_data_folder\MQL5\Include\
  • Placez Blau_SM_Stochastic.mq5 dans le dossier terminal_data_folder\MQL5\Indicators\

Convergence et Divergence des Moyennes Mobiles par William Blau.

Convergence et Divergence des Moyennes Mobiles par William Blau.

Calcul :

La convergence/divergence des moyennes mobiles se calcule par la formule :

macd(prix,r,s) = EMA(prix,s) - EMA(prix,r)
s < r

où :

  • prix - prix de clôture de la période actuelle ;
  • EMA(prix,r) - EMA lente avec période r, appliquée au prix ;
  • EMA(prix,s) - EMA rapide avec période s, appliquée au prix.

La formule du MACD selon William Blau s'exprime comme suit :

MACD(prix,r,s,u) = EMA( macd(prix,r,s) ,u) = EMA( EMA(prix,s)-EMA(prix,r) ,u)
s < r

où :

  • prix - prix de clôture ;
  • EMA(prix,r) - 1ère lissage - EMA lente, appliquée au prix ;
  • EMA(prix,s) - 2ème lissage - EMA rapide, appliquée au prix ;
  • macd(r,s)=EMA(prix,s)-EMA(prix,r) - convergence/divergence des moyennes mobiles ;
  • EMA(macd(r,s),u) - 3ème lissage (avec période u), appliquée au MACD.
Paramètres d'entrée:
  • r - période de la 1ère EMA (lente), appliquée au prix (par défaut r=20) ;
  • s - période de la 2ème EMA (rapide), appliquée au prix (par défaut s=5) ;
  • u - période de la 3ème EMA, appliquée au MACD (par défaut u=3) ;
  • AppliedPrice - type de prix (par défaut AppliedPrice=PRICE_CLOSE).
Remarque:
  • r>1, s>1 ;
  • s<r (selon William Blau, aucune vérification n'est effectuée dans le code) ;
  • u>0. Si u=1, le lissage n'est pas utilisé ;
  • Min. taux =([max(r,s)]+u-2+1).

Liste
Commentaire 0