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

AverageTrueRange

AverageTrueRange en ProBuilder renvoie l'ATR, une mesure de volatilité basée sur le True Range lissé de Wilder sur N bars. Syntaxe, formule, exemples détaillés.

Syntaxe

probuilder
AverageTrueRange[N](price)

Paramètres

NomTypePar défautDescription
Nentier14Période de lissage en bars. 14 est le réglage d'origine de Wilder. Les périodes courtes suivent plus vite les changements de volatilité, les périodes longues donnent une base plus stable.
pricesource de prixcloseSérie de prix passée à la fonction, par convention close.

Formule

code
TR  = Max(High - Low, Abs(High - Close[1]), Abs(Low - Close[1]))
ATR = WilderAverage[N] of TR

Le True Range est la plus grande de trois distances : le range du bar courant, la distance entre la clôture précédente et le plus haut courant, et la distance entre la clôture précédente et le plus bas courant. Les deux termes basés sur la clôture intègrent les gaps de nuit dans la mesure. Le lissage utilise la méthode de Wilder, une moyenne exponentielle avec alpha = 1/N.

Comment ça marche

Une simple amplitude haut moins bas sous-estime la volatilité dès que le marché fait un gap, car le mouvement s'est produit entre les bars et non à l'intérieur de l'un d'eux. Le True Range corrige cela en ancrant la mesure à la clôture précédente, si bien qu'un bar qui ouvre loin de la clôture de la veille enregistre la totalité du saut.

Lisser le True Range sur N bars produit une estimation stable du mouvement par bar, exprimée en unités de prix. Comme l'ATR est libellé dans les unités propres de l'instrument, une lecture de 25 points ne signifie pas du tout la même chose sur un indice que sur une paire de devises. Pour comparer des instruments entre eux, on divise généralement l'ATR par le prix afin d'obtenir un pourcentage.

L'ATR ne porte aucune information directionnelle. Un ATR en hausse signifie des bars et des gaps plus grands, que le marché monte ou s'effondre. Ses principaux rôles pratiques sont le position sizing, le placement des stops et le filtrage de volatilité, qui ont tous besoin d'une estimation du mouvement plutôt que d'une estimation de la direction.

Exemples

Exemple 1, Tracer l'ATR à 14 périodes (Indicateur)

probuilder
// 14-bar Average True Range, drawn in dark red
ATR = AverageTrueRange[14](close)
RETURN ATR coloured(100,0,0)

La configuration standard. Des valeurs en hausse indiquent une volatilité en expansion, des valeurs en baisse indiquent une contraction.

Exemple 2, Distance de stop basée sur l'ATR (ProOrder)

probuilder
// Long breakout entry with a stop placed 2 ATR below entry
atr = AverageTrueRange[14](close)

IF NOT LongOnMarket AND close CROSSES OVER Highest[20](high)[1] THEN
  BUY 1 CONTRACT AT MARKET
ENDIF

// Stop loss expressed as a price distance
SET STOP LOSS atr * 2

La distance de stop s'ajuste à la volatilité actuelle : large dans les marchés rapides, serrée dans les marchés calmes. Cela maintient le risque par trade proportionnel à l'ampleur réelle des mouvements de l'instrument.

Exemple 3, Scanner l'expansion de volatilité (ProScreener)

probuilder
// Instruments whose ATR has grown at least 50% above its quarterly norm
atrNow  = AverageTrueRange[14](close)
atrBase = Average[60](atrNow)
SCREENER[atrNow > atrBase * 1.5]((atrNow / close) * 100 AS "ATR % of price")

Renvoie les instruments en phase d'expansion de volatilité, classés par ATR en pourcentage du prix afin que différents marchés soient comparables.

Interprétation

ObservationLecture
ATR en hausseLes bars et les gaps s'élargissent, la volatilité s'étend. Fréquent autour des breakouts et des paniques.
ATR en baisseLe mouvement se contracte. Les contractions prolongées précèdent souvent une expansion directionnelle.
ATR élevé par rapport à son propre historiqueDes stops larges et des position sizes plus petites sont appropriés.
ATR faible par rapport à son propre historiqueLes configurations de breakout deviennent plus intéressantes, les amplitudes se compriment.

Comme l'ATR n'est pas borné et dépend de l'instrument, toute interprétation est relative aux relevés récents de l'instrument lui-même, et non à des seuils fixes.

Erreurs et pièges courants

  • Mauvais type de crochets. AverageTrueRange(14) et AverageTrueRange(14, close) échouent. La période se place entre crochets, la source de prix entre parenthèses : AverageTrueRange[14](close).
  • Comparer l'ATR brut entre instruments. L'ATR est exprimé en unités de prix. Un ATR de 50 sur un marché et de 0.005 sur un autre ne dit rien tant que les deux ne sont pas normalisés, généralement en atr / close * 100.
  • Utiliser l'ATR comme signal de direction. L'ATR monte dans les krachs comme dans les rallyes. Une logique du type acheter parce que l'ATR augmente confond volatilité et tendance.
  • Les changements d'unité de temps réajustent tout. Le même instrument a un ATR complètement différent en bars de 5 minutes et en bars journaliers. Les distances de stop et les filtres réglés sur une unité de temps doivent être recalculés après un changement.
  • TR, le True Range brut avant lissage.
  • Volatility, mesure de volatilité intégrée alternative.
  • HistoricVolatility, volatilité statistique à partir des rendements logarithmiques.
  • STD, écart type du prix sur une fenêtre.
  • Supertrend, niveau de suivi de tendance construit sur l'ATR.
  • KeltnerBandUp, canal de volatilité utilisant l'amplitude moyenne.
  • ChandeKrollStopUp, niveau de trailing stop basé sur l'ATR.
  • Highest, valeur la plus haute sur une période de recul, utilisée dans la logique de breakout.
  • Lowest, valeur la plus basse sur une fenêtre de recul.