Momentum Breakout EMA 34 Crossover-Strategie


Erstellungsdatum: 2024-02-26 15:05:18 zuletzt geändert: 2024-02-26 15:05:18
Kopie: 0 Klicks: 789
1
konzentrieren Sie sich auf
1617
Anhänger

Momentum Breakout EMA 34 Crossover-Strategie

Überblick

Diese Strategie basiert auf der Dynamik-Kreuzung der EMA 34 als Einstiegssignal. Sie kombiniert gleichzeitig das Breakout-Signal der Preis-Destruktion der EMA-Dynamik-Linie und das Gold-Kreuzung der EMA 34-Gleichgewicht-Linie, um ein Handelssignal zu erzeugen.

Strategieprinzip

Die Strategie berechnet zuerst die 34-Zyklus-EMA-Mittel von “close”, “high”, “low” und benennt sie jeweils “emaClose”, “emaHigh” und “emaLow”. Dann erzeugt sie ein Kauf- und Verkaufssignal, je nachdem, ob der Preis die “emaHigh” und “emaLow” durchbrechen wird.

Konkret wird ein Kaufsignal erzeugt, wenn der Schlusskurs über dem EmaHigh liegt. Wenn der Schlusskurs unter dem EmaLow liegt, wird ein Verkaufsignal erzeugt. Sobald ein Signal erzeugt wird, tritt man mit dem damaligen Schlusskurs ein und setzt den Stop-Loss auf 100 Punkte und den Stop-Loss auf 50 Punkte.

Die Strategie nutzt die Dynamik der EMA 34 um die Trends des Marktes zu erfassen und zu verfolgen.

Analyse der Stärken

Der größte Vorteil dieser Strategie besteht darin, dass die Kombination von Gold-Cross-Signalen und Preis-Breakout-Signalen zur gleichen Zeit die Eintrittszeiten präziser macht und falsche Signale effektiv filtern kann. Darüber hinaus kann die EMA als Trend-Tracking-Tool der Strategie helfen, Markttrends rechtzeitig zu erfassen und Trend-Tracking-Geschäfte zu realisieren.

Risikoanalyse

Das Hauptrisiko dieser Strategie besteht darin, dass sie leicht zu mehrfachen Verlusten führt. Die Strategie kann häufig Positionsverluste reduzieren, wenn die Kurse nach kurzen Korrekturwellen neu aufwärts treten. Außerdem kann sie als Trend-Tracking-Strategie nicht gut profitieren, wenn die Kurse abgerundet werden.

Die Strategie kann optimiert werden, um die Gewinnrate zu erhöhen, indem die Stop-Loss-Punkte entsprechend angepasst oder andere Indikatoren hinzugefügt werden.

Optimierungsrichtung

Die Strategie kann in folgenden Richtungen optimiert werden:

  1. Zusätzliche Filter für andere Kennzahlen, wie z. B. die Hinzufügung der Transaktionsmenge, um zu vermeiden, dass sie bei falschen Durchbrüchen eingeschlossen werden.

  2. Optimierung der EMA-Zyklusparameter und Anpassung an die für die Sorte geeigneten Zyklusparameter.

  3. Eine ähnliche Ausgangsmethode wie bei den Gewinn- und Verlust-Vergleichen, anstatt nur eine Stop-Stop-Loss-Methode zu verwenden, kann die Stabilität der Strategie verbessern.

  4. Durch die Erhöhung der Liquiditätsfilterung und die Vermeidung von Zeiten mit schlechter Liquidität kann der Verlust an Slipppoints verringert werden.

Zusammenfassen

Die Strategie ist als Trend-Tracking-Strategie basierend auf EMA-Dynamik-Indikatoren sehr praktisch. Durch die Kombination von Preis-Breakout-Signalen und EMA-Gold-Cross-Signalen kann eine neue Trendrichtung effektiv entdeckt werden. Durch die Optimierung bestimmter Parameter und Ausstiegsmechanismen kann die Strategie-Stabilität weiter erhöht werden.

Strategiequellcode
/*backtest
start: 2024-01-01 00:00:00
end: 2024-01-31 23:59:59
period: 1h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=5
strategy("EMA 34 Crossover Strategy_4", overlay=true)

length = 34
exitPoints = 50

emaClose = ta.ema(close, length)
emaHigh = ta.ema(high, length)
emaLow = ta.ema(low, length)

var float[] entryPrices = array.new_float()
var float[] exitLevels = array.new_float()

// Long entry condition: Price crosses above EMA 34 high
enterLong = ta.crossover(close, emaHigh)

// Short entry condition: Price crosses below EMA 34 low
enterShort = ta.crossunder(close, emaLow)

// Exit condition for both long and short trades
exitLong = array.size(entryPrices) > 0 ? close >= array.get(entryPrices, array.size(entryPrices) - 1) + exitPoints : false
exitShort = array.size(entryPrices) > 0 ? close <= array.get(entryPrices, array.size(entryPrices) - 1) - exitPoints : false

if (enterLong)
    array.push(entryPrices, close)
    array.push(exitLevels, close + exitPoints)
    strategy.entry("Buy", strategy.long)

if (enterShort)
    array.push(entryPrices, close)
    array.push(exitLevels, close - exitPoints)
    strategy.entry("Sell", strategy.short)

if (exitLong)
    strategy.close("Buy")

if (exitShort)
    strategy.close("Sell")

plot(emaClose, color=color.blue, title="EMA 34 Close")
plot(emaHigh, color=color.red, title="EMA 34 High")
plot(emaLow, color=color.green, title="EMA 34 Low")