Jetzt beitreten
Indikatoren/probuilder · probacktest · proorder · proscreener

TR

TR gibt in ProBuilder die True Range eines Bars zurück, die weiteste von drei Spannen aus Hoch, Tief und vorherigem Schlusskurs, als Maß für die Volatilität. Beispiele enthalten.

Syntax

probuilder
TR(price)

Parameter

NameTypStandardBeschreibung
priceKursquelleSchlusskursKursreihe, die an die Funktion übergeben wird, meist close. Die Range selbst wird aus High und Low des Bars sowie dem vorherigen Close abgeleitet.

Formel

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

Die Absolutwerte sind entscheidend, wenn der Bar vollständig über oder unter den vorherigen Schlusskurs gapt. In diesem Fall definiert der Abstand zum vorherigen Schlusskurs die True Range, nicht die eigene Hoch-Tief-Spanne des Bars.

So funktioniert es

Das einfache Range eines Bars (High minus Low) unterschätzt die Volatilität, sobald der Markt eine Lücke reißt. Öffnet ein Bar weit über dem vorherigen Close, hat sich der Kurs tatsächlich von diesem Close zu den neuen Niveaus bewegt, auch wenn der Bar-Körper die Lücke nie abdeckte. True Range behebt das, indem der vorherige Close in den Vergleich einbezogen wird, sodass Overnight-Gaps und Limit-Bewegungen als Bewegung gezählt werden.

Die Ausgabe wird in Kurseinheiten des Instruments ausgedrückt. Für sich genommen ist ein einzelner TR-Wert verrauscht, ein einziger breiter Bar genügt, um ihn nach oben zu reißen. Aus diesem Grund wird er fast immer über eine Anzahl von Bars geglättet, was genau das ist, was AverageTrueRange mit Wilder-Glättung macht. Rohe TR bleibt nützlich, wenn Details auf Bar-Ebene wichtig sind, zum Beispiel beim Erkennen einzelner Expansions-Bars oder beim Aufbau eigener Volatilitätsmaße mit einer anderen Glättungsmethode.

Da der erste Bar der Datenreihe keinen vorherigen Schlusskurs hat, greift der früheste Wert auf die für diesen Bar verfügbaren Informationen zurück. Berechnungen, die auf Historie verweisen, sollten eine Aufwärmphase einplanen.

Beispiele

Beispiel 1, Rohe True Range jedes Bars (Indikator)

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

Zeichnet die True Range Bar für Bar. Spitzen markieren Bars mit ungewöhnlich weiter Bewegung, einschließlich Gap-Eröffnungen, die eine einfache Range aus Hoch minus Tief verfehlen würde.

Beispiel 2, Volatilitätsskalierter Stop-Abstand (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

Der Stop wird zwei geglättete True Ranges vom Einstieg entfernt platziert, sodass sich sein Abstand in volatilen Märkten ausweitet und in ruhigen verengt, statt eine feste Anzahl von Punkten zu sein.

Beispiel 3, Scan auf Range-Ausweitung (ProScreener)

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

Gibt Instrumente zurück, deren aktueller Bar mehr als das Doppelte ihrer durchschnittlichen True Range der letzten 20 Bars abdeckt, eine einfache Methode, um Breakout-Kandidaten und nachrichtengetriebene Bewegungen aufzuspüren.

Interpretation

Höhere TR-Werte bedeuten größere Kursausschläge pro Bar, mit anderen Worten höhere kurzfristige Volatilität. Es gibt keine festen Schwellen, das Maß steht in absoluten Kurseinheiten, sodass ein TR von 5 bei einem Instrument enorm und bei einem anderen unerheblich ist. Sinnvoll sind Vergleiche mit der eigenen jüngeren Historie des Instruments, typischerweise als Verhältnis zu einem Durchschnitt wie TR(close) / Average[20](TR(close)). Steigende TR begleitet oft Breakouts und Nachrichtenereignisse, schrumpfende TR kennzeichnet Konsolidierungsphasen.

Häufige Fehler und Stolperfallen

  • TR mit Range verwechseln. Range ist nur High minus Low. Bei einer Eröffnung mit Gap weichen die beiden deutlich voneinander ab, und TR ist das korrekte Maß für die tatsächliche Bewegung.
  • Verwendung von rohem TR, wo ATR gemeint ist. Die True Range einer einzelnen Bar ist verrauscht. Position Sizing und Stop-Platzierung verwenden normalerweise AverageTrueRange oder einen expliziten Durchschnitt von TR, nicht den Rohwert.
  • TR über Instrumente hinweg vergleichen. TR wird in den Kurseinheiten des Instruments ausgedrückt. Screener, die verschiedene Märkte nach roher TR ordnen, ordnen größtenteils Kursniveaus. Teilen Sie zuerst durch den Kurs oder durch die eigene durchschnittliche TR des Instruments.
  • Der erste Bar hat keinen vorherigen Schlusskurs. Die Formel verweist auf close[1], das auf dem ersten Bar der geladenen Historie nicht existiert, daher sind die frühesten Werte nicht aussagekräftig. Ignorieren Sie die Warm-up-Bars.
  • AverageTrueRange, Wilder-geglätteter Durchschnitt von TR, der Standard-ATR-Indikator.
  • Range, schlicht Hoch minus Tief des Bars, ignoriert Gaps.
  • High, höchster Kurs des aktuellen Bars.
  • Low, tiefster Kurs des aktuellen Bars.
  • Highest, höchster Wert einer Reihe über N Bars.
  • Lowest, niedrigster Wert einer Reihe über N Bars.
  • STD, Standardabweichung, ein alternatives Volatilitätsmaß.
  • HistoricVolatility, statistische Volatilität, berechnet aus den Renditen.
  • Volatility, Chaikin Volatility basierend auf dem Hoch-Tief-Spread.