Bli medlem i dag
Indikatorer/probuilder · probacktest · proorder · proscreener

AverageTrueRange

AverageTrueRange i ProBuilder returnerer ATR, et volatilitetsmål basert på Wilders glattede True Range over N barer. Syntaks, formel, gjennomgåtte eksempler.

Syntaks

probuilder
AverageTrueRange[N](price)

Parametere

NavnTypeStandardBeskrivelse
Nheltall14Glattingsperiode i barer. 14 er Wilders opprinnelige innstilling. Kortere perioder følger volatilitetsskift raskere, lengre perioder gir en jevnere basislinje.
pricepriskildelukkPrisserien som sendes til funksjonen, konvensjonelt close.

Formel

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

True Range er den største av tre avstander: gjeldende bars spenn, avstanden fra forrige lukk til gjeldende høy, og avstanden fra forrige lukk til gjeldende lav. De to lukkbaserte leddene tar gap over natten med i målingen. Glattingen bruker Wilders metode, et eksponentielt gjennomsnitt med alpha = 1/N.

Slik fungerer det

En enkel range på høy minus lav undervurderer volatiliteten hver gang markedet gapper, fordi bevegelsen skjedde mellom barer og ikke inne i én. True Range løser dette ved å feste målingen til forrige sluttkurs, slik at en bar som åpner langt fra gårsdagens sluttkurs registrerer hele spranget.

Å glatte True Range over N barer gir et stabilt anslag på bevegelse per bar uttrykt i prisenheter. Fordi ATR er denominert i instrumentets egne enheter, betyr en verdi på 25 punkter noe helt annet på en indeks enn på et valutapar. For sammenligninger på tvers av instrumenter deles ATR vanligvis på prisen for å få en prosentandel.

ATR bærer ingen retningsinformasjon. Stigende ATR betyr større barer og gap, enten markedet stiger eller kollapser. Hovedrollene i praksis er position sizing, stopp-plassering og volatilitetsfiltrering, som alle trenger et estimat på bevegelse heller enn på retning.

Eksempler

Eksempel 1, Tegne ATR med 14 perioder (Indikator)

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

Standardoppsettet. Stigende verdier indikerer utvidende volatilitet, fallende verdier indikerer sammentrekning.

Eksempel 2, Stoppavstand basert på 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

Stoppavstanden skalerer med gjeldende volatilitet: bred i raske markeder, tett i rolige. Dette holder risikoen per handel proporsjonal med hvor mye instrumentet faktisk beveger seg.

Eksempel 3, Screening etter volatilitetsutvidelse (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")

Returnerer instrumenter i en fase med volatilitetsutvidelse, rangert etter ATR som prosent av prisen slik at ulike markeder kan sammenlignes.

Tolkning

ObservasjonAvlesning
ATR stigerBarer og gap blir større, volatiliteten utvider seg. Vanlig rundt breakouts og panikk.
ATR fallerBevegelsen trekker seg sammen. Langvarige sammentrekninger går ofte forut for retningsbestemt utvidelse.
ATR høy mot sin egen historikkBrede stopp og mindre position sizes er passende.
ATR lav mot sin egen historikkBreakout-oppsett blir mer interessante, rangene komprimeres.

Fordi ATR er ubegrenset og instrumentspesifikk, er all tolkning relativ til instrumentets egne nylige avlesninger, ikke til faste terskler.

Vanlige feil og fallgruver

  • Feil parentestype. AverageTrueRange(14) og AverageTrueRange(14, close) feiler. Perioden står i hakeparenteser, priskilden i runde parenteser: AverageTrueRange[14](close).
  • Å sammenligne rå ATR på tvers av instrumenter. ATR er i prisenheter. En ATR på 50 i ett marked og 0.005 i et annet sier ingenting før begge er normalisert, typisk som atr / close * 100.
  • Å bruke ATR som retningssignal. ATR stiger i krakk akkurat som i oppganger. Logikk som å kjøpe fordi ATR øker, forveksler volatilitet med trend.
  • Endringer i tidsramme skalerer om alt. Samme instrument har en helt annen ATR på 5-minutters barer og dagsbarer. Stoppavstander og filtre som er tilpasset én tidsramme må utledes på nytt etter et bytte.
  • TR, den rå True Range før glatting.
  • Volatility, alternativt innebygd volatilitetsmål.
  • HistoricVolatility, statistisk volatilitet fra logaritmiske avkastninger.
  • STD, standardavvik for prisen over et vindu.
  • Supertrend, trendfølgende nivå bygget på ATR.
  • KeltnerBandUp, volatilitetskanal som bruker gjennomsnittlig range.
  • ChandeKrollStopUp, trailing stop-nivå basert på ATR.
  • Highest, høyeste verdi over en tilbakeblikksperiode, brukt i breakout-logikk.
  • Lowest, laveste verdi over et tilbakeblikksvindu.