Jetzt beitreten
Indikatoren/probuilder · probacktest · proorder · proscreener

FractalDimensionIndex

FractalDimensionIndex[period](price) in ProBuilder misst die Kurskomplexität zwischen 1 und 2 und zeigt, ob ein Markt trendet oder in einer Range feststeckt.

Syntax

probuilder
FractalDimensionIndex[period](price)

Parameter

NameTypStandardBeschreibung
periodGanzzahl30Anzahl der Bars, die zur Schätzung der fraktalen Dimension verwendet werden. Kürzere Fenster reagieren schneller, wechseln das Regime aber häufiger.
priceKursquelleSchlusskursAnalysierte Serie, zum Beispiel close, open, high, oder low.

Formel

Code
FDI = estimated fractal dimension D of the price path over the last period bars
1 <= FDI <= 2

Die fraktale Dimension beschreibt, wie vollständig eine Kurve den Raum ausfüllt, durch den sie sich bewegt. Eine Gerade hat die Dimension 1, eine Kurve, die so zerklüftet ist, dass sie sich wie eine gefüllte Fläche verhält, nähert sich 2. Der Index schätzt diese Dimension für den normalisierten Kursverlauf innerhalb des Rückblickfensters.

So funktioniert es

Das Konzept stammt aus der fraktalen Geometrie: ein klar trendender Markt zeichnet einen Verlauf, der nahe an einer Gerade liegt, sodass seine gemessene Dimension nahe 1 bleibt. Ein Markt, der innerhalb einer Range hin und her schwingt, zeichnet einen weit verschlungeneren Verlauf, und seine Dimension steigt in Richtung 2. Der Indikator verdichtet diese geometrische Eigenschaft zu einer einzigen Regime-Anzeige.

Die herkömmliche Trennlinie liegt bei 1.5. Werte darunter klassifizieren das Fenster als trendend, und je niedriger der Wert, desto einseitiger war die Bewegung. Werte über 1.5 klassifizieren es als seitwärts, wobei die Bewegung von Rauschen und Mean Reversion dominiert wird.

Der Index ist richtungsblind. Ein starker Aufwärtstrend und ein starker Abwärtstrend erzeugen beide niedrige Werte. Er wird daher als Filter verwendet, der entscheidet, welche Art von Strategie laufen soll, trendfolgende Logik bei niedrigem Wert, Range- oder mean-reversion-Logik bei hohem Wert, und nicht als eigenständiger Signalgeber.

Beispiele

Beispiel 1, Regime-Anzeige mit der Schwelle 1.5 (Indikator)

probuilder
// Fractal dimension of the close over 30 bars
FDIValue = FractalDimensionIndex[30](close)
RETURN FDIValue AS "FDI", 1.5 AS "Trend threshold"

Zeichnet den Fractal Dimension Index über 30 Perioden gegen die Standardgrenze 1.5, die trendendes von seitwärts gerichtetem Verhalten trennt.

probuilder
// Take channel breakouts only when the market is classified as trending
fdi     = FractalDimensionIndex[30](close)
upBand  = Highest[20](high)

IF NOT LongOnMarket THEN
  IF fdi < 1.5 AND close > upBand[1] THEN
    BUY 1 CONTRACT AT MARKET
  ENDIF
ELSE
  IF close < Average[20](close) THEN
    SELL AT MARKET
  ENDIF
ENDIF

Verwendet den Index als Regimefilter: 20-Bar-breakouts werden nur gehandelt, solange die fraktale Dimension trendende Bedingungen bestätigt, wodurch breakouts innerhalb unruhiger Ranges ausgefiltert werden.

probuilder
fdi = FractalDimensionIndex[30](close)
// Low fractal dimension marks near-linear price paths
SCREENER[fdi < 1.4](fdi AS "FDI 30")

Gibt Instrumente zurück, deren Kursverlauf über 30 Bars nahezu linear ist, Kandidaten für trendfolgende Ansätze unabhängig von der Richtung.

Interpretation

AblesungMarktcharakter
Nahe 1Nahezu linearer Verlauf, starker Trend in eine Richtung.
Unter 1.5Trendend. Je niedriger der Wert, desto klarer der Trend.
Um 1.5Übergang, keine klare Klassifizierung.
Über 1.5Seitwärts, die Kursbewegung wird von Hin-und-Her-Rauschen dominiert.

Der praktische Nutzen liegt in der Strategieauswahl und Filterung. Die Kombination des Index mit einem gerichteten Werkzeug, etwa der Steigung eines gleitenden Durchschnitts oder ADX mit DI-Linien, liefert die Richtung, die die fraktale Dimension bewusst auslässt. Werte, die nahe 1.5 schwanken, sind ambivalent und werden oft am besten als signalfreier Bereich behandelt.

Häufige Fehler und Stolperfallen

  • Eine Richtung hineinlesen. Ein Wert von 1.2 sagt, dass der Markt trendet, nicht in welche Richtung. Den Index mit einem gerichteten Maß zu kombinieren ist zwingend erforderlich, bevor gerichtete Trades platziert werden.
  • Falscher Klammertyp. Die Periode steht in eckigen Klammern, die Kursquelle in runden Klammern: FractalDimensionIndex[30](close). FractalDimensionIndex(30, close) löst einen Syntaxfehler aus.
  • Verzögerte Regimewechsel. Die Schätzung beschreibt das gesamte Rückblickfenster, daher hält ein frischer Breakout aus einer langen Range den Wert für mehrere Bars über 1.5. Rechnen Sie damit, dass die Klassifizierung dem tatsächlichen Regimewechsel nachläuft.
  • Zu kurze Perioden. Kleine Fenster machen die Dimensionsschätzung instabil, und die Regime-Einordnung wechselt häufig. Der Standardwert von 30 Bars ist für die meisten Zeiteinheiten eine sinnvolle Untergrenze.
  • ADX, Maß für die Trendstärke, ebenfalls richtungsblind.
  • R2, Bestimmtheitsmaß, wie gut sich der Kurs an eine Gerade anpasst.
  • LinearRegressionSlope, gerichtete Steigung, die mit dem Regimefilter kombiniert wird.
  • Volatility, alternatives Maß für die Aktivität.
  • STD, Standardabweichung des Kurses.
  • Supertrend, gerichtetes trendfolgendes Overlay.
  • RSI, begrenzter Oszillator, geeignet für das Seitwärtsregime.
  • Average, gleitender Durchschnitt für Richtung und Ausstiege.