TR
TR i ProBuilder returnerar True Range för en bar, den bredaste av tre spreads byggda från high, low och föregående stängning, som mäter volatilitet. Exempel inuti.
Syntax
TR(price)Parametrar
| Namn | Typ | Standard | Beskrivning |
|---|---|---|---|
price | priskälla | close | Prisserien som skickas till funktionen, vanligen close. Själva intervallet härleds från barens högsta, lägsta och föregående stängning. |
Formel
TR = MAX(high - low,
ABS(high - close[1]),
ABS(low - close[1]))Absolutvärdena har betydelse när baren gapar helt över eller under föregående stängning. I det fallet definieras true range av avståndet från föregående stängning, inte av barens eget high-low-spann.
Så fungerar det
Den enkla Range för en bar (högsta minus lägsta) underskattar volatiliteten när marknaden gapar. Om en bar öppnar långt över föregående stängning har priset faktiskt förflyttat sig från den stängningen till de nya nivåerna, även om barens kropp aldrig täckte gapet. True Range åtgärdar detta genom att ta med föregående stängning i jämförelsen, så att gap över natten och limitrörelser räknas som rörelse.
Utdata uttrycks i instrumentets prisenheter. För sig själv är ett enskilt TR-värde brusigt, en enda bred bar räcker för att få det att skjuta i höjden. Av det skälet utjämnas det nästan alltid över ett antal barer, vilket är precis vad AverageTrueRange gör med Wilder-utjämning. Rå TR är fortfarande användbar när detaljer per bar har betydelse, till exempel vid upptäckt av enskilda expansionsbarer eller när egna volatilitetsmått byggs med en annan utjämningsmetod.
Eftersom den första baren i dataserien inte har någon föregående stängning faller det tidigaste värdet tillbaka på den information som finns för den baren. Beräkningar som refererar till historik bör tillåta en uppvärmningsperiod.
Exempel
Exempel 1, Rå true range för varje bar (Indikator)
// True range of the current bar, in price units
variable1 = TR(close)
RETURN variable1Ritar true range bar för bar. Toppar markerar barer med ovanligt stor rörelse, inklusive gapöppningar som ett enkelt high minus low-intervall skulle missa.
Exempel 2, Volatilitetsskalat stoppavstånd (ProBacktest)
// 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
ENDIFStoppen placeras två utjämnade true ranges från entryn, så dess avstånd vidgas i volatila marknader och dras åt i lugna i stället för att vara ett fast antal punkter.
Exempel 3, Skanning av intervallexpansion (ProScreener)
myTR = TR(close)
avgTR = Average[20](myTR)
SCREENER[myTR > 2 * avgTR] (myTR AS "True Range")Returnerar instrument vars aktuella bar täcker mer än dubbla deras average true range för de senaste 20 barerna, ett enkelt sätt att lyfta fram breakout-kandidater och nyhetsdrivna rörelser.
Tolkning
Högre TR-värden betyder större prisutslag per bar, med andra ord högre kortsiktig volatilitet. Det finns inga fasta trösklar, måttet anges i absoluta prisenheter, så ett TR på 5 är enormt på ett instrument och försumbart på ett annat. Jämförelser är meningsfulla mot instrumentets egen senaste historik, vanligen som en kvot mot ett genomsnitt som TR(close) / Average[20](TR(close)). Stigande TR följer ofta med breakouts och nyhetshändelser, krympande TR kännetecknar konsolideringsfaser.
Vanliga fel och fallgropar
- Att blanda ihop TR med Range.
Rangeär bara high minus low. Vid en gapöppning skiljer sig de två kraftigt, och TR är det korrekta måttet på faktisk rörelse. - Att använda rå TR där ATR avses. En enskild bars true range är stökig. Logik för position sizing och stopplacering använder normalt
AverageTrueRangeeller ett explicit medelvärde avTR, inte råvärdet. - Att jämföra TR mellan instrument. TR uttrycks i instrumentets prisenheter. Screeners som rangordnar olika marknader på rå TR rangordnar mest prisnivåer. Dividera först med priset eller med instrumentets eget genomsnittliga TR.
- Den första baren har ingen föregående stängning. Formeln refererar till
close[1], som inte finns på den första baren i den inlästa historiken, så de tidigaste värdena är inte meningsfulla. Bortse från uppvärmningsbarerna.
Relaterade instruktioner
AverageTrueRange, Wilder-utjämnat genomsnitt av TR, standardindikatorn ATR.Range, enkel high minus low för baren, ignorerar gap.High, högsta pris för den aktuella baren.Low, lägsta pris för den aktuella baren.Highest, högsta värde i en serie över N barer.Lowest, det lägsta värdet i en serie över N barer.STD, standardavvikelse, ett alternativt volatilitetsmått.HistoricVolatility, statistisk volatilitet beräknad från avkastningar.Volatility, Chaikin Volatility baserad på high-low-spread.