Jetzt beitreten
Indikatoren/probuilder · probacktest · proorder · proscreener

ZigZagPoint

ZigZagPoint in ProBuilder zeichnet den Zickzack-Indikator mit einer festen Punkt-Schwelle anstelle eines prozentualen Filters. Syntax, Parameter, Beispiele, Stolperfallen.

Syntax

probuilder
ZigZagPoint[Zp](price)

Parameter

NameTypStandardBeschreibung
ZpZahlkeineUmkehrschwelle in Punkten (Kurseinheiten). Ein neuer Pivot wird erst bestätigt, nachdem sich der Kurs um mindestens Zp Punkte gegen den aktuellen Swing.
priceKursquelleSchlusskursDie Serie, auf der die Pivots erkannt werden. Akzeptiert close, open, high, low, oder eine eigene Variable.

Formel

Es existiert keine geschlossene Formel. Die Konstruktionsregel lautet:

Code
1. Track the extreme of the current swing since the last confirmed pivot.
2. When price moves at least Zp points away from that extreme in the opposite
   direction, the extreme becomes a pivot and the swing reverses.
3. Each bar's output is the value of the straight line joining consecutive pivots.

So funktioniert es

ZigZagPoint filtert die Kursbewegung auf dieselbe Weise ZigZag tut, aber die Umkehrschwelle wird in absoluten Punkten statt in Prozent angegeben. Bei einem Index, der bei 15000 notiert, ZigZagPoint[100] ignoriert jede Gegenbewegung kleiner als 100 Punkte; im selben Chart ZigZag[5] würde ein Retracement von 750 Punkten erfordern. Die punktbasierte Version ist die natürliche Wahl, wenn man in instrumentspezifischen Einheiten denkt, Ticks, Pips oder Indexpunkten, oder wenn die Risikoparameter einer Strategie bereits in Punkten definiert sind.

Der Kompromiss besteht darin, dass eine feste Punkt-Schwelle sich nicht an das Kursniveau anpasst. Ein Filter, der für ein Instrument bei 5000 abgestimmt ist, wird relativ gesehen doppelt so durchlässig, wenn sich das Instrument auf 10000 verdoppelt. Lange historische Studien an wachsenden Instrumenten verhalten sich mit der prozentualen Variante in der Regel konsistenter.

Wie bei allen Zig-Zag-Konstruktionen ist der jüngste Abschnitt vorläufig. Solange der Kurs keine vollständige Zp-Punkt-Umkehr kann der letzte Pivot verschoben und das letzte Segment neu gezeichnet werden. Der Indikator beschreibt daher vergangene Struktur, Swing-Hochs und -Tiefs, Wellenmuster, pivotbasierte Unterstützung und Widerstand, und ist als Echtzeit-Einstiegssignal unbrauchbar.

Beispiele

Beispiel 1, Zickzack mit einem 10-Punkte-Filter (Indikator)

probuilder
// Ignore all counter-moves smaller than 10 points
myZigZag = ZigZagPoint[10](close)
RETURN myZigZag

Das Quellbeispiel: nur Umkehrungen von mindestens 10 Punkten erzeugen einen neuen Pivot, sodass die Linie die großen swings nachzeichnet und das Rauschen dazwischen überspringt.

Beispiel 2, Markierung bestätigter Pivot-Niveaus (Indikator)

probuilder
// Track the most recent zig-zag pivot value as a horizontal reference
zz = ZigZagPoint[50](close)

IF (zz > zz[1] AND zz[1] < zz[2]) OR (zz < zz[1] AND zz[1] > zz[2]) THEN
  // The line changed direction on the previous bar, record the pivot
  lastPivot = zz[1]
ENDIF

RETURN zz AS "ZigZagPoint", lastPivot AS "Last pivot"

Erkennt Richtungswechsel in der Zickzack-Linie und speichert den Pivot-Wert, wodurch eine Stufenlinie vergangener swing-Niveaus entsteht, die als Referenzen für Unterstützung und Widerstand nutzbar ist.

Beispiel 3, Screening nach Nähe zum letzten swing-Niveau (ProScreener)

probuilder
// Instruments trading within 20 points of their zig-zag line
zz = ZigZagPoint[100](close)
nearSwing = ABS(close - zz) < 20
SCREENER[nearSwing](close - zz AS "Points vs ZZ")

Wählt Instrumente aus, deren Kurs innerhalb von 20 Punkten der 100-Punkte-Zickzack-Linie liegt. Wie bei jeder Zickzack-Ausgabe kann der jüngste Abschnitt neu zeichnen, daher spiegeln die Ergebnisse die aktuelle vorläufige Struktur wider.

Interpretation

Die Ausgabe wird strukturell gelesen und nicht als Signallinie. Eine Folge steigender Pivots, höhere Hochs und höhere Tiefs, beschreibt einen Aufwärtstrend in der gewählten Auflösung; fallende Pivots beschreiben einen Abwärtstrend. Bestätigte Pivots dienen oft als Referenzniveaus: frühere swing-Hochs als Widerstand, frühere swing-Tiefs als Unterstützung und Abstände von Pivot zu Pivot als Maß für die typische swing-Größe für die Position Size oder die Platzierung von Zielen.

Der Zp Einstellung steuert die Auflösung. Kleine Werte legen kleinere Strukturen offen, große Werte reduzieren den Chart auf eine Handvoll großer Wellen. Da die Schwelle absolut ist, hängt ein passender Wert vollständig vom Kursniveau und der Volatilität des Instruments ab.

Häufige Fehler und Stolperfallen

  • Punkte versus Prozent. ZigZagPoint[5] bedeutet 5 Kurseinheiten, nicht 5 Prozent. Das Übertragen einer Einstellung von ZigZag ohne Umrechnung verändert das Verhalten des Indikators vollständig.
  • Den neu zeichnenden Abschnitt handeln. Das letzte Segment wird neu gezeichnet, bis ein vollständiger Zp-Punkt-Umkehr abgeschlossen ist. Regeln, die aktuelle ZigZagPoint-Werte auslesen, nutzen Informationen, die in Echtzeit nicht existierten, was Backtests aufbläht.
  • Eine Schwelle für viele Instrumente. Ein 50-Punkte-Filter ist auf einem Instrument grob und auf einem anderen unsichtbar. In Screenern über gemischte Listen ist die prozentbasierte ZigZag liefert besser vergleichbare Ergebnisse.
  • Die Punktgröße des Instruments vergessen. Bei Instrumenten mit gebrochener Kursnotierung ist ein Punkt eine ganze Kurseinheit, nicht ein Tick. Prüfen Sie POINTSIZE bei der Umrechnung von Ticks oder Pips.
  • ZigZag, dieselbe Konstruktion mit einer prozentualen Schwelle.
  • Highest, höchster Wert über N bars, eine nicht neu zeichnende Alternative.
  • Lowest, niedrigster Wert über N Bars.
  • SAR, Parabolic-Stop-and-Reverse-Trendverfolger.
  • Supertrend, ATR-basierte trendfolgende Linie.
  • POINTSIZE, Wert eines Punktes für das Instrument.
  • Average, konventionelle Glättung per gleitendem Durchschnitt.
  • DRAWSEGMENT, zeichnet eigene Segmente zwischen Koordinaten.