
Die Strategie ist eine einfache Trend-Tracking-Strategie, die auf EMA-Indikatoren basiert. Sie verwendet zwei EMA-Linien mit unterschiedlichen Parametern, eine kurzfristige EMA-Linien und eine langfristige EMA-Linien. Wenn Sie die langfristige EMA-Linien auf der kurzfristigen EMA-Linien durchbrechen, machen Sie mehr; wenn Sie die langfristige EMA-Linien unter der kurzfristigen EMA-Linien durchbrechen, platten Sie.
Der EMA ist ein Trend-Tracking-Indikator, der den Preis als Index-Glattlauf-Mittelwert bewertet. Die kurzfristige EMA-Linie reagiert schneller auf Preisänderungen und spiegelt die jüngste Preisentwicklung wider. Die langfristige EMA-Linie reagiert langsamer auf Preisänderungen und spiegelt die langfristige Tendenz wider.
Die Strategie setzt EMA-Linien mit 9 und 21 Perioden ein. Die Kurzzeit-EMA-Linien mit 9 Perioden und die Kreuzung der EMA-Linien mit 21 Perioden werden als Handelssignale verwendet.
Die Risiken können auf folgende Weise gelöst werden:
Die Strategie nutzt die Kreuzung von zwei verschiedenen EMA-Parametern, um ein Handelssignal zu erzeugen und durch Trendverfolgung zu profitieren. Die Strategie hat den Vorteil, dass sie einfach und leicht zu bedienen ist, mit einer moderaten Handelsfrequenz und mittel-langfristige Trends zu erfassen. Die EMA-Indikatoren haben jedoch Probleme mit dem Rückstand, die Signalhinweise und die Optimierung von dynamischen Stopps können das Risiko weiter reduzieren.
/*backtest
start: 2023-01-25 00:00:00
end: 2024-01-31 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=4
strategy("EMA Crossover Strategy", overlay=true)
// Input parameters
shortPeriod = input(9, title="Short EMA Period")
longPeriod = input(21, title="Long EMA Period")
stopLossPercent = input(1, title="Stop Loss (%)") / 100
takeProfitMultiplier = input(2, title="Take Profit Multiplier")
// Calculate EMAs
emaShort = ema(close, shortPeriod)
emaLong = ema(close, longPeriod)
// Plot EMAs
plot(emaShort, color=color.blue, title="Short EMA")
plot(emaLong, color=color.red, title="Long EMA")
// Strategy logic
strategy.entry("Buy", strategy.long, when=crossover(emaShort, emaLong))
strategy.close("Buy", when=crossunder(emaShort, emaLong))
// Risk management
atrValue = atr(14)
stopLossLevel = close * (1 - stopLossPercent)
takeProfitLevel = close * takeProfitMultiplier
strategy.exit("Take Profit/Stop Loss", from_entry="Buy", loss=stopLossLevel, profit=takeProfitLevel)