Trendfolgende Handelsstrategie basierend auf dem ZigZag-Indikator


Erstellungsdatum: 2024-01-08 10:13:24 zuletzt geändert: 2024-01-08 10:13:24
Kopie: 0 Klicks: 680
1
konzentrieren Sie sich auf
1237
Anhänger

Trendfolgende Handelsstrategie basierend auf dem ZigZag-Indikator

Überblick

Die ZigZag-Trend-Following-Strategie verwendet den ZigZag-Indikator, um eine Preisentwicklung zu erkennen und bei einer Trendwende einen Handel zu eröffnen. In der Strategy Pine-Code wird der ZigZag-Indikator verwendet, um neue Höchststände und neue Tiefststände zu bestätigen. Als Handelssignal wird verwendet, wenn der Preis die ZigZag-Anzeige überschreitet.

Strategieprinzip

Der Kern der Strategie ist die Verwendung von ZigZag-Indikatoren, um die Extreme der Preise zu finden und die Preisentwicklung zu zeigen. Die ZigZag-Indikatoren bestehen aus einem Exponential Moving Average mit hohen und niedrigen Preisen. Insbesondere besteht die Konstruktion aus folgenden Schritten:

  1. Der Index-Moving-Average EMA für die Schlusspreise, der aus drei Moving-Averagen besteht: Schnelllinie, Mittellinie und Langlinie.

  2. Beurteilen Sie, ob die Preise in einer Aufwärtstrend sind. Das heißt, ob die aktuelle Mittellinie höher ist als die Mittellinie der vorherigen K-Linie.

  3. Wenn es sich um einen Aufwärtstrend handelt, finden Sie den niedrigsten Preis in der Testphase, der vom Tiefpunkt der vorherigen Welle ausgeht, als ZigZag-Wert.

  4. Finden Sie den höchsten Preis in der Testphase, der von den Höchstständen der vorherigen Welle ausgeht, wenn es sich um einen Abwärtstrend handelt, als ZigZag-Wert.

  5. So entsteht der ZigZag-Index, der die Höhepunkte der Preisschwankungen widerspiegelt.

Auf dieser Grundlage nehmen wir die ZigZag-Linie als Referenz, um die Preisentwicklung zu beurteilen. Wenn die ZigZag-Anzeige-Linie durchbrochen wird, wenn die Preise steigen, machen wir mehr; wenn die ZigZag-Anzeige-Linie durchbrochen wird, wenn die Preise fallen, machen wir weniger.

Analyse der Stärken

Die Vorteile der Verwendung von ZigZag-Indikatoren für die Bestimmung von Preistrends und die Verfolgung von Preis-Extreme-Punkten als Lagerhaltung sind:

  1. Das ist eine sehr gute Möglichkeit, um Marktlärm zu filtern und die wichtigsten Trends zu erfassen.

  2. Die Handelssignale basieren auf Preisschwankungen und Breakouts, so dass ein hoher Gewinn möglich ist.

  3. ZigZag-Linien sind glatter und verringern das Fehlsignal.

  4. Die Strategie kann leicht optimiert werden, indem Sie die ZigZag-Parameter anpassen.

Risikoanalyse

Die wichtigsten Risiken dieser Strategie sind:

  1. Die langfristige Laufzeit kann durch die starken Schwankungen in den Märkten eingeschränkt werden.

  2. ZigZag-Indikatoren sind parametersensibel. Eine falsche Einstellung kann zu verpassten Handelsmöglichkeiten oder zu falschen Signalen führen. Die Parameter müssen entsprechend getestet und optimiert werden.

  3. Trend-Tracking-Strategien sind eher auf Trends angewiesen.

Für diese Risiken können wir einen Stop-Loss-Mechanismus einrichten, um einzelne Verluste zu kontrollieren. Gleichzeitig können wir die Größe der Positionen anpassen, um nicht nach Vollposition zu streben.

Optimierungsrichtung

Wir können diese Strategie in folgenden Bereichen weiter optimieren:

  1. Erhöhung der Stop-Loss-Mechanismen, z. B. die Festlegung von beweglichen Stop-Losses oder Stop-Losses, die den Preis zurückziehen.

  2. In Kombination mit anderen Kennzahlen filtern sie ein. Zum Beispiel ein verstärkter Energieindikator, um sicherzustellen, dass genügend Energie vorhanden ist; oder ein Handelsvolumenindikator, um sicherzustellen, dass es eine Gewichtserhöhung gibt.

  3. Unterschiedliche Parameterkonfigurationen für unterschiedliche Marktumstände (z. B. Bull- und Bärenmärkte).

  4. Verschiedene EMA-Durchschnittsparameter werden getestet, um die optimale Kombination zu finden.

Zusammenfassen

Diese Strategie nutzt ZigZag-Indikatoren, um die Preisentwicklung zu ermitteln und um eine Tracking-Position in der Nähe der Extreme zu erstellen. Ihr Vorteil ist, dass es sich um einen effizienten, effizienten Gewinn handelt.

Strategiequellcode
/*backtest
start: 2023-12-31 00:00:00
end: 2024-01-07 00:00:00
period: 30m
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=3
strategy(title = "Noro's ZigTrend Strategy v1.0", shorttitle = "ZigTrend 1.0", overlay = true, default_qty_type = strategy.percent_of_equity, default_qty_value = 100, pyramiding = 0)

//Settings
needlong = input(true, defval = true, title = "Long")
needshort = input(true, defval = true, title = "Short")
capital = input(100, defval = 100, minval = 1, maxval = 10000, title = "Capital, %")
length = input(4)
ExtremeDetection = input(4)
src = input(close)
fromyear = input(1900, defval = 1900, minval = 1900, maxval = 2100, title = "From Year")
toyear = input(2100, defval = 2100, minval = 1900, maxval = 2100, title = "To Year")
frommonth = input(01, defval = 01, minval = 01, maxval = 12, title = "From Month")
tomonth = input(12, defval = 12, minval = 01, maxval = 12, title = "To Month")
fromday = input(01, defval = 01, minval = 01, maxval = 31, title = "From day")
today = input(31, defval = 31, minval = 01, maxval = 31, title = "To day")

//ZigZag
f_zz(_length, _detection)=>
    _hls = ema(ema(ema(src, _length), round(_length*0.66)), round(_length*0.33))
    _isRising = _hls >= _hls[1]
    _zigzag = _isRising and not _isRising[1] ? lowest(_detection) :  not _isRising and _isRising[1] ? highest(_detection) : na
zigzag = f_zz(length, ExtremeDetection)
plot(zigzag, color=black, linewidth=2)

//Signals
up = close > zigzag
dn = close < zigzag

//Trading
lot = 0.0
lot := strategy.position_size != strategy.position_size[1] ? strategy.equity / close * capital / 100 : lot[1]
if up
    strategy.entry("Long", strategy.long, needlong == false ? 0 : lot)

if dn
    strategy.entry("Short", strategy.short, needshort == false ? 0 : lot)