Quantitative Handelsstrategie basierend auf RSI


Erstellungsdatum: 2023-12-06 17:17:16 zuletzt geändert: 2023-12-06 17:17:16
Kopie: 0 Klicks: 546
1
konzentrieren Sie sich auf
1621
Anhänger

Quantitative Handelsstrategie basierend auf RSI

Überblick

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.

Strategieprinzip

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.

Strategische Vorteile

  • Vergleichen Sie die beiden RSI, um Veränderungspunkte in kurz- und langfristigen Preistrends zu erkennen und Umkehrmöglichkeiten zu erfassen
  • Der doppelte RSI entfernt den Noise-Trading von False Breakouts
  • Konfigurieren Sie einen Stop-Loss-Punkt, um Einzelschäden zu begrenzen

Strategisches Risiko

  • RSI-Signale können sich während starker Aktienpreisschwankungen häufig umkehren
  • Zu kleine Stop-Loss-Punkte, die zu einem Stop-Loss nach einer kleinen Erschütterung führen können
  • Der Doppel-RSI-Parameter ist falsch eingestellt und könnte einen großen Trendwechsel verpassen

Strategieoptimierung

  • RSI-Parameter können mehr Kombinationen testen, um die besten Parameter zu finden
  • False-Break-Signale können in Kombination mit anderen Indikatoren gefiltert werden
  • Dynamische Anpassung der Stop-Loss-Rate, um die Stop-Loss-Rate flexibler zu gestalten

Zusammenfassen

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.

Strategiequellcode
/*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")