Rejoignez-nous
Indicateurs/probuilder · probacktest · proorder · proscreener

DEMA

DEMA dans ProBuilder retourne la Double Exponential Moving Average, une moyenne mobile à retard réduit construite à partir de deux EMA. Syntaxe, formule, exemples, pièges.

Syntaxe

probuilder
DEMA[N](price)

Paramètres

NomTypePar défautDescription
Nentier20Nombre de périodes pour les deux passes d'EMA. Les valeurs basses collent au prix, les valeurs hautes lissent davantage.
pricesource de prixcloseSérie sur laquelle la moyenne est calculée, comme close, open, high, low, ou une variable personnalisée.

Formule

code
EMA1 = ExponentialAverage[N](price)
EMA2 = ExponentialAverage[N](EMA1)
DEMA = 2 * EMA1 - EMA2

Comment ça marche

Toute moyenne mobile retarde sur le prix, et lisser une EMA une seconde fois retarde encore plus. La construction de la DEMA exploite cela : la différence EMA1 - EMA2 approxime le retard actuel, et le rajouter par-dessus EMA1 (c'est ce que 2 * EMA1 - EMA2 le fait) pousse la ligne vers l'avant, vers les prix les plus récents.

Le résultat n'est pas une moyenne de moyennes. Malgré son nom, la DEMA réagit plus vite qu'une EMA unique de même période, et non plus lentement. Dans les marchés en tendance, elle se retourne plus tôt aux points de swing, ce qui explique son utilisation dans les systèmes de croisement où le retard du signal coûte cher.

Le compromis porte sur la stabilité. Comme la compensation du retard est une extrapolation, la DEMA peut dépasser le prix après des mouvements brusques et générer des croisements en dents de scie dans les marchés agités. La confirmation par une moyenne plus lente ou un filtre de force de tendance est le remède habituel.

Exemples

Exemple 1, Comparaison du retard DEMA contre EMA (Indicateur)

probuilder
// Same period, two smoothing methods, plotted on price
fastLine = DEMA[20](close)
slowLine = ExponentialAverage[20](close)
RETURN fastLine COLOURED(200, 60, 60) AS "DEMA 20", slowLine COLOURED(60, 60, 200) AS "EMA 20"

Superpose une DEMA à 20 périodes et une EMA à 20 périodes. La DEMA se retourne visiblement plus tôt sur les swing highs et lows, ce qui montre la réduction du retard.

Exemple 2, Compter les bars sous la moyenne (Indicateur)

probuilder
// 10-period DEMA of the opening price
i1 = DEMA[10](open)
a = 0
// Count how many consecutive past opens sit below the current DEMA value
WHILE Open[a + 1] < i1 DO
  a = a + 1
WEND
RETURN a

Parcourt les bars à rebours et compte combien d'ouvertures précédentes consécutives sont sous la DEMA actuelle, une mesure approximative de l'écartement du prix par rapport à la moyenne.

Exemple 3, Système de croisement de deux DEMA (ProOrder)

probuilder
// Fast and slow DEMA crossover with position reversal
fastDema = DEMA[10](close)
slowDema = DEMA[40](close)

IF fastDema CROSSES OVER slowDema THEN
  BUY 1 CONTRACT AT MARKET
ELSIF fastDema CROSSES UNDER slowDema THEN
  SELLSHORT 1 CONTRACT AT MARKET
ENDIF

Un système classique à deux moyennes mobiles utilisant la DEMA sur les deux branches. Le retard réduit rapproche les entrées du vrai retournement par rapport au même système construit sur des moyennes simples.

Interprétation

La DEMA se lit comme n'importe quelle moyenne mobile, en plus rapide :

  • Prix au-dessus d'une DEMA croissante. Lecture en tendance haussière. Les replis vers la ligne sont des zones de continuation potentielles.
  • Prix en dessous d'une DEMA décroissante. Lecture en tendance baissière, symétrique de ce qui précède.
  • Croisements. Une DEMA rapide croisant une DEMA lente signale un changement de momentum plus tôt que le croisement SMA ou EMA équivalent, avec d'autant plus de faux départs dans les phases de range.

Erreurs et pièges courants

  • Supposer que la DEMA est plus lente que l'EMA. Le nom suggère un double lissage, mais la formule soustrait la seconde EMA. Une DEMA réagit plus vite qu'une EMA de même période, donc reprendre les réglages de périodes de systèmes EMA change le comportement.
  • Dépassement après les gaps et les pics. Le 2 * EMA1 - EMA2 l'extrapolation peut écarter la ligne du prix après des mouvements brusques. Des conditions comme close CROSSES OVER dema peut se déclencher plus souvent que prévu juste après des épisodes de volatilité.
  • Mauvais usage des crochets. La période va entre crochets et le prix entre parenthèses : DEMA[10](open). DEMA(10, open) déclenche une erreur de syntaxe.
  • Les boucles décroissantes doivent se terminer. Lors du parcours des bars passées avec WHILE, comme dans l'exemple 2, assurez-vous que la condition de boucle finit par échouer sur l'historique disponible, sinon l'indicateur atteint la limite de boucle de la plateforme sur les graphiques longs.
  • ExponentialAverage, l'EMA unique à partir de laquelle la DEMA est construite.
  • TEMA, variante triple exponentielle avec encore moins de retard et plus de dépassement.
  • ZLEMA, EMA à retard nul, une autre approche de la compensation du retard.
  • HullAverage, alternative à faible retard basée sur une moyenne pondérée.
  • Average, ligne de base en moyenne mobile simple.
  • WeightedAverage, moyenne pondérée linéairement.
  • WilderAverage, lissage lent utilisé dans le RSI et l'ADX.
  • TimeSeriesAverage, moyenne basée sur la régression linéaire.