Volatilitäts-Trend-Oszillator-Divergenz-Strategie,

WT VWAP
Erstellungsdatum: 2024-05-28 17:43:54 zuletzt geändert: 2024-05-28 17:43:54
Kopie: 0 Klicks: 721
1
konzentrieren Sie sich auf
1617
Anhänger

Volatilitäts-Trend-Oszillator-Divergenz-Strategie,

Überblick

Die Strategie kombiniert WaveTrend-Schockindikator (WT) und Volumen-Wert-Durchschnittspreis (VWAP), um potenzielle Trendwende-Gelegenheiten durch die Identifizierung von Preisen und Abweichungen des Indikators zu erfassen. Die Strategie verwendet ATR (Average True Range), um die Stop-Position zu ermitteln und die Position dynamisch anhand des Prozentsatzes der Konto-Risiken zu skalieren. Die Hauptvorteile der Strategie liegen in ihrer Fähigkeit, Trends zu verfolgen und Risikomanagementmaßnahmen zu ergreifen, die jedoch in einem schwachen Markt zu Verlusten führen können.

Strategieprinzip

  1. Berechnung des WaveTrend-Obsillationsindikators ((WT): Erstellen Sie einen Dynamik-Obsillationsindikator, indem Sie die Differenz zwischen dem aktuellen Preis und seinem Kanal und dem Durchschnitt vergleichen.
  2. Berechnung der Transaktionsmenge als gewichteter Durchschnittspreis (VWAP): Die Transaktionsmenge wird als Gewicht für die Berechnung des beweglichen Durchschnittspreises verwendet.
  3. Identifizieren Sie die Abweichung zwischen dem Preis und dem WT-Indikator: Wenn der Preis ein neues Hoch/neues Tief erzeugt, während der Indikator es nicht schafft, ein neues Hoch/neues Tief zu erzeugen, ist eine Trendwende möglich.
  4. Einstiegsbedingungen: Wenn der Händler erkennt, dass der Kurs abweicht, erhöhen Sie die Position; wenn der Kurs abweicht, schließen Sie die Position.
  5. Stopp: Dynamische Stoppposition basierend auf der ATR.
  6. Positionsgröße: Die Positionsgröße für jeden Handel wird dynamisch angepasst, je nach Konto-Risiko-Prozent und Stop-Loss-Distance.
  7. Hintergrundfarbe: Die Hintergrundfarbe ändert sich je nach Überkauf/Überverkauf des Indikators und bietet zusätzliche visuelle Hinweise.

Analyse der Stärken

  1. Trend-Tracking: Durch die Identifizierung von Preis- und Indikator-Abweichungen kann die Strategie potenzielle Trend-Umkehr-Gelegenheiten erfassen.
  2. Risikomanagement: Die Verwendung von ATR-basierten dynamischen Stop-Losses und die Anpassung der Positionsgröße an die Risikoprozentsätze hilft, potenzielle Verluste zu kontrollieren.
  3. Visuelle Hinweise: Die Hintergrundfarbe ändert sich je nach Überkauf/Überverkauf des Indikators, um den Händlern zusätzliche visuelle Signale zu geben.
  4. Flexibilität: Die Parameter der Strategie (z. B. die Länge der Kanäle, die Durchschnittslänge und die Überkauf-/Überverkaufsklassen) können an unterschiedliche Marktbedingungen und Handelsstile angepasst werden.

Risikoanalyse

  1. Unbeständige Märkte: Die Strategie kann unter Marktbedingungen ohne eindeutige Trends kontinuierlich verlieren.
  2. Parameteroptimierung: Die Performance der Strategie hängt stark von der Wahl der Parameter ab, die falsch eingestellt sind, was zu suboptimierten Ergebnissen führen kann.
  3. Übertriebenheit: Häufige Ein- und Ausstiegssignale können zu höheren Transaktionskosten führen und die Gesamtperformance der Strategie beeinträchtigen.

Optimierungsrichtung

  1. Trendfilter: Bei Abweichungen werden zusätzliche Trendbestätigungsindikatoren (z. B. Moving Averages) eingeführt, um potenzielle Falschsignale zu filtern.
  2. Dynamische Parameter: Indikatorparameter, die an die Marktvolatilität angepasst werden, mit kürzeren Kanälen und mittlerer Länge bei niedrigerer Volatilität und längeren Parametern bei höherer Volatilität.
  3. Stop-out: Einführung eines dynamischen Stop-out-Levels, basierend auf dem Risiko-Rendite-Verhältnis oder dem Zielpreis, um die bereits erworbenen Positionen besser zu verwalten.
  4. Multi-Location-Filter: Filtert Handelssignale nach der allgemeinen Trendrichtung des Marktes (wie z. B. der langfristige Moving Average) und handelt nur in der Trendrichtung.

Zusammenfassen

Die WaveTrend Oscillator Divergence Strategy kombiniert eine Kombination aus schwankenden Trend-Indikatoren und einem gewogenen Kursdurchschnitt, um potenzielle Trendwende-Gelegenheiten zu identifizieren. Die Strategie hat ihre Vorteile in ihrer Fähigkeit, Trends zu verfolgen und Risikomanagementmaßnahmen zu ergreifen, kann jedoch in einem schwankenden Markt gefährdet sein. Die Strategie kann durch die Einführung zusätzlicher Filterbedingungen, Anpassung der dynamischen Parameter und verbesserter Ausgangsregeln weiter optimiert werden.

Strategiequellcode
/*backtest
start: 2023-05-22 00:00:00
end: 2024-05-27 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=5
strategy("PipShiesty Swagger", overlay=true)

// WaveTrend Oscillator (WT)
n1 = input.int(10, "Channel Length")
n2 = input.int(21, "Average Length")
obLevel1 = input.float(60.0, "Overbought Level 1")
obLevel2 = input.float(53.0, "Overbought Level 2")
osLevel1 = input.float(-60.0, "Oversold Level 1")
osLevel2 = input.float(-53.0, "Oversold Level 2")

ap = hlc3
esa = ta.ema(ap, n1)
d = ta.ema(math.abs(ap - esa), n1)
ci = (ap - esa) / (0.015 * d)
tci = ta.ema(ci, n2)

// VWAP
vwap = ta.vwma(close, n1)

// Signal Line
wt1 = tci
wt2 = ta.sma(wt1, 4)

// Bullish and Bearish Divergences
bullishDivergence = (ta.lowest(close, 5) > ta.lowest(close[1], 5)) and (wt1 < wt1[1]) and (close > close[1])
bearishDivergence = (ta.highest(close, 5) < ta.highest(close[1], 5)) and (wt1 > wt1[1]) and (close < close[1])

// Plot WaveTrend Oscillator
plot(wt1, title="WT1", color=color.blue)
plot(wt2, title="WT2", color=color.red)

// Plot Divergences
plotshape(series=bullishDivergence, location=location.belowbar, color=color.green, style=shape.labelup, title="Bullish Divergence")
plotshape(series=bearishDivergence, location=location.abovebar, color=color.red, style=shape.labeldown, title="Bearish Divergence")

// Risk Management Parameters
riskPercentage = input.float(1, title="Risk Percentage per Trade", minval=0.1, step=0.1) / 100
stopLossATR = input.float(1.5, title="Stop Loss ATR Multiplier", minval=0.5, step=0.1)

// ATR Calculation
atr = ta.atr(14)

// Position Size Calculation
calculatePositionSize(stopLoss) =>
    riskAmount = strategy.equity * riskPercentage
    positionSize = riskAmount / stopLoss
    positionSize

// Entry and Exit Logic with Stop Loss
if bullishDivergence
    stopLoss = low - atr * stopLossATR
    positionSize = calculatePositionSize(close - stopLoss)
    strategy.entry("Buy", strategy.long, qty=positionSize)
    strategy.exit("Sell", from_entry="Buy", stop=stopLoss)

if bearishDivergence
    strategy.close("Buy")

// Plot VWAP
plot(vwap, title="VWAP", color=color.orange)

// Background color to indicate Overbought/Oversold conditions
bgcolor(wt1 > obLevel1 ? color.new(color.red, 90) : na, title="Overbought Level 1")
bgcolor(wt1 < osLevel1 ? color.new(color.green, 90) : na, title="Oversold Level 1")
bgcolor(wt1 > obLevel2 ? color.new(color.red, 70) : na, title="Overbought Level 2")
bgcolor(wt1 < osLevel2 ? color.new(color.green, 70) : na, title="Oversold Level 2")