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

TR

TR i ProBuilder returnerer True Range for en bar, den bredeste av tre spenn bygget fra high, low og forrige lukkekurs, som måler volatilitet. Eksempler inni.

Syntaks

probuilder
TR(price)

Parametere

NavnTypeStandardBeskrivelse
pricepriskildelukkPrisserien som sendes til funksjonen, vanligvis close. Selve intervallet er utledet fra barens høyeste, laveste og forrige lukkekurs.

Formel

kode
TR = MAX(high - low,
         ABS(high - close[1]),
         ABS(low  - close[1]))

Absoluttverdiene har betydning når baren gaper helt over eller under forrige lukkekurs. I det tilfellet definerer avstanden fra forrige lukkekurs, ikke barens eget high-low-spenn, true range.

Slik fungerer det

Den enkle Range til en bar (høy minus lav) undervurderer volatiliteten hver gang markedet gapper. Hvis en bar åpner langt over forrige lukk, har prisen faktisk flyttet seg fra det lukket til de nye nivåene, selv om barkroppen aldri dekket gapet. True Range retter dette ved å ta forrige lukk med i sammenligningen, slik at gap over natten og limitbevegelser teller som bevegelse.

Resultatet uttrykkes i instrumentets prisenheter. Alene er en enkelt TR-verdi støyende, én bred bar er nok til å gi et utslag. Derfor jevnes den nesten alltid ut over et antall barer, som er nøyaktig det AverageTrueRange gjør med Wilder-utjevning. Rå TR er fortsatt nyttig når detaljer per bar betyr noe, for eksempel ved å oppdage enkelte ekspansjonsbarer eller bygge egne volatilitetsmål med en annen utjevningsmetode.

Fordi den første baren i dataserien ikke har noen forrige lukkekurs, faller den tidligste verdien tilbake på informasjonen som er tilgjengelig for den baren. Beregninger som refererer til historikk bør tillate en oppvarmingsperiode.

Eksempler

Eksempel 1, Rå true range for hver bar (Indikator)

probuilder
// True range of the current bar, in price units
variable1 = TR(close)
RETURN variable1

Plotter true range bar for bar. Topper markerer barer med uvanlig stor bevegelse, inkludert gap-åpninger som et enkelt high minus low-område ville gå glipp av.

Eksempel 2, Volatilitetsskalert stoppavstand (ProBacktest)

probuilder
// Smooth the raw true range to size the protective stop
myTR = TR(close)
smoothTR = Average[14](myTR)

IF NOT ONMARKET AND close CROSSES OVER Average[50](close) THEN
  BUY 1 CONTRACT AT MARKET
  SET STOP LOSS 2 * smoothTR
ENDIF

Stoppen plasseres to utjevnede true ranges fra inngangen, så avstanden utvides i volatile markeder og strammes inn i rolige i stedet for å være et fast antall punkter.

Eksempel 3, Skanning etter områdeutvidelse (ProScreener)

probuilder
myTR = TR(close)
avgTR = Average[20](myTR)
SCREENER[myTR > 2 * avgTR] (myTR AS "True Range")

Returnerer instrumenter hvis gjeldende bar dekker mer enn dobbelt så mye som deres gjennomsnittlige true range for de siste 20 barene, en enkel måte å få frem breakout-kandidater og nyhetsdrevne bevegelser.

Tolkning

Høyere TR-verdier betyr større prisutslag per bar, med andre ord høyere kortsiktig volatilitet. Det finnes ingen faste terskler, målet er i absolutte prisenheter, så en TR på 5 er enorm på ett instrument og ubetydelig på et annet. Sammenligninger er meningsfulle mot instrumentets egen nylige historikk, vanligvis som et forholdstall til et gjennomsnitt som TR(close) / Average[20](TR(close)). Stigende TR følger ofte breakouts og nyhetshendelser, mens avtagende TR kjennetegner konsolideringsfaser.

Vanlige feil og fallgruver

  • Å forveksle TR med Range. Range er bare high minus low. Ved en gap-åpning avviker de to betydelig, og TR er det riktige målet på faktisk bevegelse.
  • Bruk av rå TR der ATR er ment. True range for én enkelt bar er støyende. Logikk for position size og stopplassering bruker normalt AverageTrueRange eller et eksplisitt gjennomsnitt av TR, ikke råverdien.
  • Å sammenligne TR på tvers av instrumenter. TR uttrykkes i instrumentets prisenheter. Screenere som rangerer ulike markeder på rå TR rangerer stort sett prisnivåer. Del på prisen eller på instrumentets eget gjennomsnittlige TR først.
  • Første bar har ingen forrige lukkekurs. Formelen refererer til close[1], som ikke finnes på den første baren i den innlastede historikken, så de tidligste verdiene er ikke meningsfulle. Se bort fra oppvarmingsbarene.
  • AverageTrueRange, Wilder-utjevnet gjennomsnitt av TR, standard ATR-indikatoren.
  • Range, rett og slett high minus low for baren, ignorerer gap.
  • High, høyeste pris i gjeldende bar.
  • Low, laveste pris i gjeldende bar.
  • Highest, høyeste verdi i en serie over N barer.
  • Lowest, laveste verdi i en serie over N barer.
  • STD, standardavvik, et alternativt volatilitetsmål.
  • HistoricVolatility, statistisk volatilitet beregnet fra avkastninger.
  • Volatility, Chaikin Volatility basert på high-low-spreaden.