
Die Strategie ist ein auf der ATR basierendes Short-Trade-Back-Trading-System, das vor allem die Möglichkeit einer übermäßigen Preisverlängerung durch die Berechnung dynamischer ATR-Tiefststände identifiziert. Die Strategie integriert mehrere technische Indikatoren, einschließlich ATR, EMA und SMA, zu einem vollständigen Rahmen für die Handelsentscheidung.
Die Kernlogik der Strategie basiert auf den folgenden Schlüsselschritten:
Es handelt sich um eine gut konzipierte Devisenstrategie, die durch die Filterung von ATR-Dynamik und EMA-Trends ein zuverlässiges Handelssystem aufbaut. Die Strategie hat den Vorteil, dass sie anpassungsfähig und risikokontrollierter ist, aber auch auf die Risiken von Veränderungen der Marktumgebung achtet. Durch kontinuierliche Optimierung und Verbesserung des Risikomanagements wird die Strategie unter verschiedenen Marktumgebungen stabil bleiben.
/*backtest
start: 2024-02-21 00:00:00
end: 2025-02-18 08:00:00
period: 2d
basePeriod: 2d
exchanges: [{"eid":"Binance","currency":"ETH_USDT"}]
*/
//@version=6
strategy("[SHORT ONLY] ATR Sell the Rip Mean Reversion Strategy", overlay=true, initial_capital = 1000000, default_qty_value = 100, default_qty_type = strategy.percent_of_equity, process_orders_on_close = true, margin_long = 5, margin_short = 5, calc_on_every_tick = true, fill_orders_on_standard_ohlc = true)
//#region INPUTS SECTION
// ============================================
// ============================================
// Strategy Settings
// ============================================
atrPeriod = input.int(title="ATR Period", defval=20, minval=1, group="Strategy Settings")
atrMultInput = input.float(title='ATR Multiplier', defval=1.0, step=0.25, group="Strategy Settings")
smoothPeriodInput = input.int(title='Smoothing Period', defval=10, minval=1, group="Strategy Settings")
//#endregion
// ============================================
// EMA Filter Settings
// ============================================
useEmaFilter = input.bool(true, "Use EMA Filter", group="Trend Filter")
emaPeriodInput = input.int(200, "EMA Period", minval=1, group="Trend Filter")
//#region INDICATOR CALCULATIONS
// ============================================
// Calculate ATR Signal Trigger
// ============================================
atrValue = ta.atr(atrPeriod)
atrThreshold = close + atrValue * atrMultInput
signalTrigger = ta.sma(atrThreshold, smoothPeriodInput)
plot(signalTrigger, title="Smoothed ATR Trigger", color=color.white)
// ============================================
// Trend Filter
// ============================================
ma200 = ta.ema(close, emaPeriodInput)
plot(ma200, color=color.red, force_overlay=true)
//#region TRADING CONDITIONS
// ============================================
// Entry/Exit Logic
// ============================================
shortCondition = close>signalTrigger
exitCondition = close<low[1]
// Apply EMA Filter if enabled
if useEmaFilter
shortCondition := shortCondition and close < ma200
//#endregion
if shortCondition
strategy.entry("Short", strategy.short)
if exitCondition
strategy.close_all()