Strategie für die Verlagerung des gleitenden Durchschnitts über Gold

Schriftsteller:ChaoZhang, Datum: 2023-12-27 15:56:12
Tags:

img

Übersicht

Diese Strategie ist eine einfache gleitende Durchschnitts-Crossover-Strategie. Sie geht lang, wenn die schnelle EMA über die langsame EMA überschreitet, und kurz, wenn die schnelle EMA unter die langsame EMA überschreitet.

Strategie Logik

Die Strategie basiert auf schnellen und langsamen gleitenden Durchschnitten. Die schnelle Linie ist ein 9-tägiger EMA und die langsame Linie ist ein 21-tägiger EMA. Sie geht lang, wenn die schnelle Linie über die langsame Linie von unten überschreitet. Sie geht kurz, wenn die schnelle Linie unter die langsame Linie von oben überschreitet. Ausgänge werden durch umgekehrte Kreuzungen ausgelöst.

Der Stop-Loss wird basierend auf einem Prozentsatz des Schließens festgelegt. Der Take-Profit basiert auf einem Prozentsatz des Schließens. Der Break-Even-Stop-Loss bewegt sich zum Einstiegspreis, wenn der Preis das Break-Even-Niveau erreicht.

Analyse der Vorteile

Die Vorteile dieser Strategie sind:

  1. Einfache und klare Logik, leicht zu verstehen und umzusetzen
  2. Verwendet die Fähigkeit, gleitenden Durchschnitten zu folgen und Trends effektiv zu erfassen
  3. Einbeziehung von Stop-Loss, Take-Profit und Break-Even zur Risikokontrolle
  4. Flexible Anpassung der Parameter, optimierbar für verschiedene Märkte

Risikoanalyse

Es gibt einige Risiken:

  1. Verzögerte Ausgabe von gleitenden Durchschnitten, möglicherweise fehlende Umkehrsignale
  2. Eine unsachgemäße Einstellung von Stop-Loss oder Take-Profit kann zu unnötigen Verlusten oder Gewinnverlusten führen
  3. Eine unsachgemäße Einstellung der Parameter kann zu einem Über- oder Fehlhandel führen

Lösungen:

  1. Optimieren Sie die Parameter und setzen Sie die gleitenden Durchschnitte richtig
  2. Anpassung des Stop-Loss-/Take-Profit-Prozentsatzes, angemessene Einstellung
  3. Anpassung der Parameter für verschiedene Märkte, um Überhandelungen zu vermeiden

Optimierungsrichtlinien

Die Strategie kann optimiert werden, indem:

  1. Prüfung verschiedener Längenkombinationen gleitender Durchschnitte
  2. Anpassung der Stopp-Loss-Prozentsätze, der Gewinnspanne und des Break-Even-Prozentsatzes an unterschiedliche Marktvolatilitäten
  3. Hinzufügen anderer technischer Indikatoren zur Filterung von Eingangssignalen
  4. Dynamische Optimierung von Parametern mit statistischen Techniken oder maschinellem Lernen

Zusammenfassung

Insgesamt hat diese gleitende Durchschnitts-Crossover-Goldstrategie eine klare Logik und ist einfach umzusetzen. Mit Stop-Loss, Take-Profit und Break-Even kontrolliert sie Risiken. Mit der richtigen Parameter-Tuning und Optimierung für verschiedene Märkte kann sie eine gute Leistung erzielen.


/*backtest
start: 2022-12-20 00:00:00
end: 2023-12-26 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=4
strategy("XAUUSD Strategy with SL, TP, and BE", shorttitle="EA", overlay=true)

// Define strategy parameters
fastLength = input(9, title="Fast EMA Length")
slowLength = input(21, title="Slow EMA Length")
stopLossPercent = input(1, title="Stop Loss (%)", minval=0, maxval=5) / 100
takeProfitPercent = input(2, title="Take Profit (%)", minval=0, maxval=5) / 100
breakEvenPercent = input(1, title="Break Even (%)", minval=0, maxval=5) / 100

// Calculate EMAs
fastEMA = ema(close, fastLength)
slowEMA = ema(close, slowLength)

// Plot EMAs on the chart
plot(fastEMA, color=color.blue, title="Fast EMA")
plot(slowEMA, color=color.red, title="Slow EMA")

// Strategy logic
enterLong = crossover(fastEMA, slowEMA)
exitLong = crossunder(fastEMA, slowEMA)

enterShort = crossunder(fastEMA, slowEMA)
exitShort = crossover(fastEMA, slowEMA)

// Calculate stop loss, take profit, and break-even levels
longStopLoss = close * (1 - stopLossPercent)
longTakeProfit = close * (1 + takeProfitPercent)
shortStopLoss = close * (1 + stopLossPercent)
shortTakeProfit = close * (1 - takeProfitPercent)

longBreakEven = close * (1 + breakEvenPercent)
shortBreakEven = close * (1 - breakEvenPercent)

// Execute strategy with stop loss, take profit, and break-even
strategy.entry("Long", strategy.long, when = enterLong)
strategy.exit("Take Profit/Stop Loss Long", from_entry="Long", profit = longTakeProfit, loss = longStopLoss)

strategy.entry("Short", strategy.short, when = enterShort)
strategy.exit("Take Profit/Stop Loss Short", from_entry="Short", profit = shortTakeProfit, loss = shortStopLoss)

// Move stop loss to break even when price reaches break-even level
strategy.exit("Break Even Long", from_entry="Long", loss = longBreakEven)
strategy.exit("Break Even Short", from_entry="Short", loss = shortBreakEven)


Mehr