
Die Strategie basiert auf einer Trendverfolgung basierend auf zwei EMA-Indikatoren. Die Strategie verfolgt automatisch die Markttrends durch Berechnung von Fastline-EMA und Slowline-EMA sowie durch die Bestimmung von Gold-Cross und Dead Fork.
Der Kern der Strategie ist die doppelte EMA. Sie umfasst die schnelle EMA-Linie und die langsame EMA-Linie. Die schnelle EMA-Linie ist 3 Tage lang und reagiert sensibel. Die langsame EMA-Linie ist 30 Tage lang und reagiert langsam.
Der größte Vorteil dieser Strategie besteht darin, dass die Markttrends automatisch erkannt und die Positionen flexibel angepasst werden können. Insbesondere gibt es folgende Vorteile:
Die Sensitivität der schnellen EMA und die Stabilität der langsamen EMA kombiniert sich, um sowohl die Trendwendepunkte genau zu erfassen als auch die Geräusche zu filtern, um falsche Signale zu verhindern.
Mit einem doppelten EMA-Kreuzsignal wird die Position nur bei signifikanten Trendveränderungen angepasst und nicht zu häufig gehandelt.
Die Strategie-Logik ist einfach und klar, leicht zu verstehen und zu ändern, und es ist auch bequem, die Rückmeldung zu quantifizieren und zu optimieren.
Die Investitionen sind sehr effizient, die meisten der Zeit halten sie ihre Positionen und folgen den Trends.
Die Doppel-EMA-Indikatoren gehören zu den Trend-Tracking-Strategien und können das Risiko von großen Erschütterungen oder Concat-Sturns nicht vorhersagen oder vermeiden. Die Risikokontrollmethode besteht darin, die Positionszeit angemessen zu verkürzen und die Verluste rechtzeitig zu stoppen.
EMA-Indikatoren sind parametersensibel. Fehlende Einstellungen der Schnell- und Langzeitspannenparameter können zu einer schlechten Strategie-Performance führen. Die optimale Parameter können durch die Rückmess-Optimierung des Systems gefunden werden.
Die doppelte EMA kann unter Umständen von False Positions ausgelöst werden. Es kann in Erwägung gezogen werden, andere Hilfsindikatoren auf der Grundlage der EMA einzuführen, um die Signale zu filtern.
Die Doppel-EMA-Strategie gehört zu den Tracking-Strategien, die nicht in der Lage sind, große Wendepunkte zu prognostizieren. Hilfsmittel wie die Einführung von K-Linienformationen an wichtigen technischen Positionen können in Betracht gezogen werden.
Die Strategie kann in folgenden Dimensionen weiter optimiert werden:
Optimierung der Parameter für die EMA-Schnell- und Langzeilen, um die optimale Parameterkombination zu finden.
Hinzufügen von anderen Kennzahlen, Multi-Faktor-Modelle, Signal-Genauigkeit.
Erhöhung der Stop-Loss-Strategie, Kontrolle des Einzeltragerrisikos, z. B. Einführung eines Trailing Stops
Die Parameter für verschiedene Sorten sind nicht unbedingt identisch. Es ist möglich, die Parameter für jede Sorte zu ermitteln, die am besten geeignet sind.
Es ist möglich, Methoden des maschinellen Lernens zu erproben, um Hyperparameter-Optimierung durch Zeit-Driving durchzuführen.
K-Linienformerkennung in Schlüsseltechnologie-Positionen zu erforschen, um eine größere Umkehrung zu erfassen.
Die Strategie ist insgesamt eine einfache und praktische Doppel-EMA-Trend-Tracking-Strategie. Durch die schnelle und langsame EMA-Kreuzbestimmung der Marktphase wird die automatische Anpassung der Positionsposition realisiert. Die Strategie-Logik ist einfach und klar und leicht zu quantifizieren.
/*backtest
start: 2023-02-19 00:00:00
end: 2024-02-25 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=5
strategy("EMA Crossover Strategy with Target", shorttitle="EMACross", overlay=true)
// Define input parameters
fastLength = input(3, title="Fast EMA Length")
slowLength = input(30, title="Slow EMA Length")
profitPercentage = input(100.0, title="Profit Percentage")
// Calculate EMAs
fastEMA = ta.ema(close, fastLength)
slowEMA = ta.ema(close, slowLength)
// Plot EMAs on the chart
plot(fastEMA, color=color.blue, title="Fast EMA")
plot(slowEMA, color=color.red, title="Slow EMA")
// Buy condition: 3EMA crosses above 30EMA
buyCondition = ta.crossover(fastEMA, slowEMA)
// Sell condition: 3EMA crosses below 30EMA or profit target is reached
sellCondition = ta.crossunder(fastEMA, slowEMA) or close >= (strategy.position_avg_price * (1 + profitPercentage / 100))
// Target condition: 50 points profit
//targetCondition = close >= (strategy.position_avg_price + 50)
// Execute orders
// strategy.entry("Buy", strategy.long, when=buyCondition)
// strategy.close("Buy", when=sellCondition )
if (buyCondition)
strategy.entry("Buy", strategy.long)
if (sellCondition)
strategy.close("Buy")
// // Execute sell orders
// strategy.entry("Sell", strategy.short, when=sellCondition)
// strategy.close("Sell", when=buyCondition)
// Plot buy and sell signals on the chart
plotshape(series=buyCondition, title="Buy Signal", color=color.green, style=shape.labelup, location=location.belowbar)
plotshape(series=sellCondition, title="Sell Signal", color=color.red, style=shape.labeldown, location=location.abovebar)