
Die RSI-Crossover-Strategie ist eine quantitative Handelsstrategie, die einen relativ starken Index (RSI) und einen Moving Average kombiniert. Die Strategie nutzt den RSI-Index, um überkaufliche und überverkaufte Wertpapierwerte zu beurteilen, und kombiniert die Gold-Crossover- und Dead-Fork-Signale des RSI mit seiner Durchschnittslinie, um zu entscheiden, ob eine Positionierung für einen bullish oder bullish Position eingerichtet wird.
Der RSI-Wert wird berechnet. Der RSI-Wert basiert auf dem Anstieg und dem Abstieg über einen bestimmten Zeitraum und beurteilt, ob ein Wertpapier überkauft oder überverkauft ist.
Berechnen Sie den Moving Average (MA) des RSI-Indikators. Verwenden Sie den Index Moving Average (EMA) oder den einfachen Moving Average (SMA).
Wenn der RSI über seinen Moving Average geht, erzeugt er ein Gold-Cross-Signal und macht einen Plus; wenn er unter seinen Moving Average geht, erzeugt er ein Dead-Fork-Signal und macht einen Minus.
Wenn der RSI höher ist als die Überkauflinie, wird der Wertpapier als überkauft angesehen und kurz gemacht. Wenn der RSI niedriger ist als die Überverkauflinie, wird der Wertpapier als überverkauft angesehen und mehr gemacht.
Durch die Kombination von Indikatoren und Durchschnittssignalen wird die Genauigkeit der Entscheidungsfindung verbessert, um die Abhängigkeit von einem Indikator zu vermeiden.
Der RSI-Indikator wird verwendet, um zu bestimmen, wann überkauft und überverkauft werden muss, um die Überkauf-Überverkauf-Linie einzurichten und um die Zeit für den Aufbau und die Verluststopfung zu bestimmen.
Die Verwendung von Indikatoren und Durchschnittskursen kann dazu beitragen, die Marktwendepunkte rechtzeitig zu erfassen.
Der RSI ist anfällig für Fehlsignale bei Schwankungen.
Der RSI kann überkauft oder überverkauft werden, wenn er nicht korrekt eingestellt ist.
Die mittellinie-Systeme sind zu empfindlich für kurzfristige Ausnahmeschwankungen und können mit Stop-Losses konfrontiert werden.
Anpassung des RSI-Parameters, um die optimale Länge zu finden.
Optimierung der Moving-Average-Parameter und Suche nach der optimalen Durchschnittsperiode.
Testung verschiedener Überkauf-Überverkauf-Linienparameter zur Optimierung der Positionsmöglichkeiten.
In Kombination mit anderen Indikatoren filtern Sie die Signale, um falsche Transaktionen zu vermeiden.
Der RSI-Indikator kombiniert mit der Durchschnitts-Cross-Strategie, die den RSI nutzt, um Überkauf-Überverkauf zu beurteilen, kombiniert mit dem Moving-Average-Cross-Signal, um die Markt-Hotspot-Regionen effektiv zu beurteilen und die Umkehrmöglichkeiten an den Schlüsselfunktionen zu erfassen. Durch die Optimierung der Parameter und die Signalfilterung kann die Strategie verbessert werden, um das Handelsrisiko zu verringern. Die Strategie ist für mittlere und kurze Händler geeignet und bietet bessere Überschüsse.
/*backtest
start: 2022-12-14 00:00:00
end: 2023-12-20 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=3
//dfurrer45
strategy(title="Relative Strength Index", shorttitle="RSI", overlay=true)
src = close, len = input(13, minval=1, title="Length"), maLen = input(9, minval=1, title="MA Lenght"), exponential = input(false, title="Exponential")
// === BACKTEST RANGE ===
FromMonth = input(defval = 10, title = "From Month", minval = 1)
FromDay = input(defval = 3, title = "From Day", minval = 1)
FromYear = input(defval = 2017, title = "From Year", minval = 2014)
ToMonth = input(defval = 1, title = "To Month", minval = 1)
ToDay = input(defval = 1, title = "To Day", minval = 1)
ToYear = input(defval = 9999, title = "To Year", minval = 2014)
// === BACKTEST END ===
backtestdaterange = (time > timestamp(FromYear, FromMonth, FromDay, 00, 00))
rsioverbought = input(90, minval=1, title="RSI % start overbought")
rsioversold = input(10, minval=1, title="RSI % start oversold")
up = rma(max(change(src), 0), len)
down = rma(-min(change(src), 0), len)
rsi = down == 0 ? 100 : up == 0 ? 0 : 100 - (100 / (1 + up / down))
ma = exponential ? ema(rsi, maLen) : sma(rsi, maLen)
rsimacrossup = cross(rsi,ma) and rsi > ma
rsimacrossdown = cross(rsi,ma) and rsi < ma
plotchar(rsimacrossup, char='⇧', location = location.belowbar, color = green, text = "", textcolor = green, size=size.small)
plotchar(rsimacrossdown, char='⇩', location = location.abovebar, color = red, text = "", textcolor = red, size=size.small)
plotchar(rsi > rsioverbought, char='x', location = location.belowbar, color = aqua, text = "", textcolor = red, size=size.small)
plotchar(rsi < rsioversold, char='x', location = location.belowbar, color = aqua, text = "", textcolor = red, size=size.small)
closetrade = rsimacrossup or rsimacrossdown
strategy.close_all(closetrade)
strategy.close_all((rsi > rsioverbought) or (rsi < rsioversold))
strategy.entry("Short Overbought",strategy.short, when=(rsi > rsioverbought) and backtestdaterange)
strategy.entry("Buy Overbought",strategy.long, when=(rsi < rsioversold) and backtestdaterange)
strategy.entry("Long Cross", strategy.long, when=rsimacrossup and backtestdaterange)
strategy.entry("Short Cross", strategy.short, when=rsimacrossdown and backtestdaterange)