
Die Strategie nutzt die Kreuzung des schnellen EMA-Mittels (Zyklus 9) und des langsamen EMA-Mittels (Zyklus 21) als Einstiegssignal und in Kombination mit einem beweglichen Stop-Loss, um Gewinne zu sperren und einen zu großen Rückzug zu vermeiden.
Wenn die schnelle EMA-Linie die langsame EMA-Linie von unten durchbricht, wird ein Kaufsignal erzeugt; wenn die schnelle EMA-Linie von oben nach unten fällt und die langsame EMA-Linie durchbricht, wird ein Verkaufsignal erzeugt.
Nach dem Eintritt verfolgt die Strategie den Höchstpreis in Echtzeit und löst einen mobilen Stop-Loss aus, wenn der aktuelle Preis 2% unter dem Höchstpreis liegt, um die Gewinne zu sperren.
Die Risiken können auf folgende Weise gelöst werden:
Die Strategie kombiniert die Vorteile von Trendbeurteilung und Stop-Loss-Management und kann sowohl rückläufig als auch effektiv Risiken kontrollieren. Durch die Anpassung und Optimierung der Parameter kann sie für verschiedene Arten von Märkten und Handelsarten verwendet werden und lohnt sich für weitere Testverfahren.
/*backtest
start: 2023-12-12 00:00:00
end: 2023-12-19 00:00:00
period: 1m
basePeriod: 1m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=4
strategy("EMA Crossover with Trailing Stop-Loss", overlay=true)
fastEMA = ema(close, 9)
slowEMA = ema(close, 21)
// Entry conditions
longCondition = crossover(fastEMA, slowEMA)
shortCondition = crossunder(fastEMA, slowEMA)
// Trailing stop-loss calculation
var float trailingStop = na
var float highestHigh = na
if (longCondition)
highestHigh := na
trailingStop := na
if (longCondition and high > highestHigh)
highestHigh := high
if (strategy.position_size > 0)
trailingStop := highestHigh * (1 - 0.02) // Adjust the trailing percentage as needed
// Execute trades
strategy.entry("Long", strategy.long, when=longCondition)
strategy.entry("Short", strategy.short, when=shortCondition)
// Apply trailing stop-loss to long positions
strategy.exit("Long", from_entry="Long", loss=trailingStop)
// Plot EMAs and Trailing Stop-Loss
plot(fastEMA, color=color.green, title="Fast EMA")
plot(slowEMA, color=color.red, title="Slow EMA")
plot(trailingStop, color=color.orange, title="Trailing Stop-Loss", linewidth=2)