
Die Strategie ist ein mehrindikatorisch synchronisiertes Trend-Reversing-Trading-System, das hauptsächlich drei technische Indikatoren kombiniert: den relativ schwachen RSI, den Parallax-Indikator SAR und den einfachen Moving Average SMA. Die Kernidee der Strategie besteht darin, potenzielle Reversing-Gelegenheiten durch den RSI-Überkaufsignale zu warnen, dann die Richtungänderungen des SAR-Indikators zu nutzen, um die Reversing-Signale zu bestätigen, und schließlich den Moving Average als dynamische Stop-Loss-Referenz zu verwenden. Diese Methode zur Überprüfung der Mehrindikator-Synchronie kann die Störung durch falsche Signale effektiv reduzieren und die Zuverlässigkeit des Handels verbessern.
Die Strategie funktioniert in drei Schritten:
Die Strategie, die durch die synchronische Zusammenarbeit von RSI und SAR, eine relativ zuverlässige Trend-Umkehr-Handelssystem zu bauen. Die Verwendung von Moving Averages als dynamische Risiko-Kontrolle-Tool, sowohl garantiert eine effektive Erfassung der Tendenz, aber auch die dynamische Kontrolle des Risikos. Die wichtigsten Vorteile der Strategie liegt in mehreren Signal-Verifizierung und klare Handelsregeln, aber in der praktischen Anwendung müssen auf die Identifizierung der Marktumgebung und die dynamische Optimierung der Parameter.
/*backtest
start: 2024-07-15 00:00:00
end: 2025-02-15 00:00:00
period: 1h
basePeriod: 1h
exchanges: [{"eid":"Binance","currency":"BNB_USDT"}]
*/
//@version=5
strategy("SAR + RSI Strategy", overlay=true, margin_long=100, margin_short=100)
// ———————— SAR Parameters ————————
start = input(0.02, "SAR Start")
increment = input(0.02, "SAR Increment")
maximum = input(0.2, "SAR Maximum")
// ———————— RSI Parameters ————————
rsiLength = input(14, "RSI Length")
upperLevel = input(70, "RSI Upper Level")
lowerLevel = input(30, "RSI Lower Level")
// ———————— SMA Parameter ————————
smaLength = input(21, "SMA Exit Length")
// ———————— Indicators Calculation ————————
// SAR Calculation
sarValue = ta.sar(start, increment, maximum)
sarUp = sarValue < close
sarDown = sarValue > close
// RSI Calculation
rsi = ta.rsi(close, rsiLength)
rsiOverbought = ta.cross(rsi, upperLevel)
rsiOversold = ta.cross(rsi, lowerLevel)
// SMA Calculation
sma21 = ta.sma(close, smaLength)
// ———————— Entry Conditions ————————
longCondition =
// RSI oversold signal occurred in last 3 bars
(ta.barssince(rsiOversold) <= 3) and
// SAR reversal to bullish occurs now
sarUp and not sarUp[1]
shortCondition =
// RSI overbought signal occurred in last 3 bars
(ta.barssince(rsiOverbought) <= 3) and
// SAR reversal to bearish occurs now
sarDown and not sarDown[1]
// ———————— Exit Conditions ————————
exitLong = ta.crossunder(close, sma21)
exitShort = ta.crossover(close, sma21)
// ———————— Strategy Execution ————————
strategy.entry("Long", strategy.long, when=longCondition)
strategy.close("Long", when=exitLong)
strategy.entry("Short", strategy.short, when=shortCondition)
strategy.close("Short", when=exitShort)
// ———————— Visualizations ————————
// plot(sarValue, "SAR", style=plot.style_circles, color=sarUp ? color.green : color.red)
// plot(sma21, "21 SMA", color=color.orange)