
Diese Strategie, die als “RSI-Umkehr” bezeichnet wird, ist eine quantitative Handelsstrategie, die auf dem Relative Strength Index (RSI) basiert. Die Strategie nutzt zwei verschiedene RSI-Perioden als Kauf- und Verkaufssignal, um einen niedrigen Kauf zu erzielen und die Handelschancen zu nutzen, die durch die Umkehrung der Aktienpreise entstehen.
Die Strategie verwendet die schnelle Periode (default 55 Tage) RSI und die langsame Periode (default 126 Tage) RSI, um ein Handelssignal zu erstellen. Es wird ein Kaufsignal erzeugt, wenn der schnelle RSI über den langsamen RSI fällt, und ein Verkaufsignal, wenn der schnelle RSI unter dem langsamen RSI fällt. So werden kurzfristige und langfristige Trendwende Chancen durch den Vergleich der relativ starken Preisdynamik in zwei verschiedenen Zeiträumen entdeckt.
Nach dem Eintritt des Signals setzt die Strategie einen Stop-Stop-Loss-Punkt ein. Der Stop-Stop-Punkt ist 0.9 mal der Eintrittspreis und der Stop-Loss-Punkt ist 3% des Eintrittspreises. Gleichzeitig wird die aktuelle Position ausgeglichen, wenn das Rückwärtssignal erneut auftritt.
Diese Strategie nutzt die Doppel-Times-Axis-RSI-Umkehr als Handelssignal mit dem Ziel, kurzfristige Kursumkehrmöglichkeiten zu erfassen. Die Stop-Loss-Regel ist eine typische Strategie, bei der der Preisumkehr durch den Vergleich von Indikatoren über mehrere Zeiträume erreicht wird. Der Optimierungsraum liegt in der Parameteranpassung und der Optimierung der Risikomanagementregeln.
/*backtest
start: 2022-11-29 00:00:00
end: 2023-12-05 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=2
strategy(title="Relative Strength Index", shorttitle="RSI")
slen = input(55, title="Short length")
llen = input(126, title="Long length")
sup = ema(max(change(close), 0), slen)
sdown = ema(-min(change(close), 0), slen)
rsi1 = sdown == 0 ? 100 : sup == 0 ? 0 : 100 - (100 / (1 + sup / sdown))
lup = ema(max(change(close), 0), llen)
ldown = ema(-min(change(close), 0), llen)
rsi2 = ldown == 0 ? 100 : lup == 0 ? 0 : 100 - (100 / (1 + lup / ldown))
ob = input(55, title="Overbought")
os = input(45, title="Oversold")
tp = input(.9, title="Take profit level %")*.01
sl = input(3, title="Stoploss level %")*.01
mid = avg(ob,os)
plot (mid, color=#4f4f4f, transp=0)
hline (ob, color=#4f4f4f)
hline (os, color=#4f4f4f)
long = crossover(rsi1,rsi2)
short = crossunder(rsi1,rsi2)
vall = valuewhen(long,close,0)
lexit1 = high>=(vall*tp)+vall
lexit2 = low<=vall-(vall*sl)
vals = valuewhen(short,close,0)
sexit1 = low<=vals - (vals*tp)
sexit2 = high>=vals + (vals*sl)
bgcolor (color=long?lime:na,transp=50)
bgcolor (color=short?red:na, transp=50)
strategy.entry("Long", strategy.long, when=long)
strategy.close("Long", when=lexit1)
strategy.close("Long", when=lexit2)
strategy.close("Long", when=short)
strategy.entry("Short", strategy.short, when=short)
strategy.close("Short", when=sexit1)
strategy.close("Short", when=sexit2)
strategy.close("Short", when=long)
plot (rsi1, color=orange, transp=0,linewidth=1, title="Short period RSI")
plot (rsi2, color=aqua , transp=0,linewidth=1, title="Long period RSI")