TR
TR in ProBuilder restituisce il True Range di una bar, il più ampio di tre spread costruiti su massimo, minimo e chiusura precedente, misurando la volatilità. Esempi all'interno.
Sintassi
TR(price)Parametri
| Nome | Tipo | Predefinito | Descrizione |
|---|---|---|---|
price | fonte di prezzo | chiusura | Serie di prezzo passata alla funzione, di solito close. Il range stesso deriva dal massimo e dal minimo del bar e dalla chiusura precedente. |
Formula
TR = MAX(high - low,
ABS(high - close[1]),
ABS(low - close[1]))I valori assoluti contano quando la bar apre in gap interamente sopra o sotto la chiusura precedente. In tal caso è la distanza dalla chiusura precedente, non l'ampiezza massimo-minimo della bar stessa, a definire il true range.
Come funziona
Il semplice Range di un bar (massimo meno minimo) sottostima la volatilità ogni volta che il mercato apre in gap. Se un bar apre molto sopra la chiusura precedente, il prezzo ha effettivamente percorso la distanza da quella chiusura ai nuovi livelli, anche se il corpo del bar non ha mai coperto il gap. Il True Range risolve questo problema includendo la chiusura precedente nel confronto, così i gap overnight e i movimenti a limite vengono conteggiati come movimento.
L'output è espresso in unità di prezzo dello strumento. Da solo, un singolo valore TR è rumoroso, basta un bar ampio per farlo schizzare. Per questo motivo viene quasi sempre livellato su un certo numero di bar, che è esattamente ciò che AverageTrueRange fa con lo smoothing di Wilder. Il grezzo TR resta utile quando conta il dettaglio barra per barra, per esempio quando si rilevano singole barre di espansione o si costruiscono misure di volatilità personalizzate con un metodo di smoothing diverso.
Poiché la prima bar della serie di dati non ha una chiusura precedente, il valore iniziale ricade sulle informazioni disponibili per quella bar. I calcoli che fanno riferimento allo storico dovrebbero prevedere un periodo di riscaldamento.
Esempi
Esempio 1, True range grezzo di ogni bar (Indicatore)
// True range of the current bar, in price units
variable1 = TR(close)
RETURN variable1Traccia il true range bar per bar. I picchi segnalano le bar con movimenti insolitamente ampi, comprese le aperture in gap che un semplice range massimo meno minimo non rileverebbe.
Esempio 2, Distanza di stop scalata sulla volatilità (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
ENDIFLo stop è posizionato a due true range smussati di distanza dall'ingresso, così la sua distanza si allarga nei mercati volatili e si restringe in quelli tranquilli, invece di essere un numero fisso di punti.
Esempio 3, Scansione di espansione del range (ProScreener)
myTR = TR(close)
avgTR = Average[20](myTR)
SCREENER[myTR > 2 * avgTR] (myTR AS "True Range")Restituisce gli strumenti la cui bar corrente copre più del doppio del loro true range medio delle ultime 20 bar, un modo semplice per far emergere candidati a breakout e movimenti guidati dalle notizie.
Interpretazione
Valori di TR più alti indicano escursioni di prezzo maggiori per bar, in altre parole una volatilità di breve termine più elevata. Non esistono soglie fisse, la misura è in unità di prezzo assolute, quindi un TR di 5 è enorme su uno strumento e trascurabile su un altro. I confronti hanno senso rispetto allo storico recente dello strumento stesso, tipicamente come rapporto con una media come TR(close) / Average[20](TR(close)). Un TR crescente accompagna spesso i breakout e le notizie, mentre un TR in contrazione caratterizza le fasi di consolidamento.
Errori e insidie comuni
- Confondere TR con Range.
Rangeè solo massimo meno minimo. In caso di apertura in gap i due valori divergono notevolmente, e TR è la misura corretta del movimento effettivo. - Uso di TR grezzo dove si intende ATR. Il true range di una singola bar è rumoroso. La logica di position size e di posizionamento dello stop usa normalmente
AverageTrueRangeo una media esplicita diTR, non il valore grezzo. - Confrontare il TR tra strumenti diversi. Il TR è espresso nelle unità di prezzo dello strumento. Gli screener che classificano mercati diversi sul TR grezzo classificano in gran parte i livelli di prezzo. Dividi prima per il prezzo o per il TR medio dello strumento stesso.
- La prima bar non ha una chiusura precedente. La formula fa riferimento a
close[1], che non esiste sulla prima barra della storia caricata, quindi i primi valori non sono significativi. Ignora le barre di warm-up.
Istruzioni correlate
AverageTrueRange, media di TR smussata secondo Wilder, l'indicatore ATR standard.Range, semplice massimo meno minimo della bar, ignora i gap.High, prezzo più alto della bar corrente.Low, prezzo più basso della bar corrente.Highest, valore più alto di una serie su N bar.Lowest, valore più basso di una serie su N bar.STD, deviazione standard, una misura alternativa della volatilità.HistoricVolatility, volatilità statistica calcolata dai rendimenti.Volatility, Chaikin Volatility basata sullo spread massimo-minimo.