RSI-Bereich Handelsstrategie

Schriftsteller:ChaoZhang, Datum: 2023-11-06 16:12:23
Tags:

img

Übersicht

Die RSI-Range-Handelsstrategie erzielt Gewinne, indem sie gegen den Trend handelt, wenn der RSI überkauft oder überverkauft ist. Sie basiert auf der Annahme, dass die Preise nicht für immer in eine Richtung trenden, sondern innerhalb eines Bereichs hin und her schwanken.

Strategie Logik

Die Strategie berechnet den RSI-Indikator, um festzustellen, ob der Preis überkaufte oder überverkaufte Niveaus erreicht hat. Insbesondere wird die RSI-Periode auf 2 Bars festgelegt. Die überkaufte Linie ist 91 und die überverkaufte Linie ist 11. Ein kurzes Signal wird erzeugt, wenn der RSI über das überkaufte Niveau geht. Ein langes Signal wird erzeugt, wenn der RSI unter das überverkaufte Niveau geht. Die Positionsgröße wird auf 5% des maximalen Risikos pro Handel festgelegt.

Um Risiken zu kontrollieren, wird ein Stop-Loss-Mechanismus implementiert. Bewegt sich der Preis nach der Eröffnung einer Long-Position um 0,5% gegenüber der Long-Position, wird die Position geschlossen. Ähnlich verhält es sich mit der Short-Position. Dies vermeidet übermäßigen Verlust, wenn der Preis stark in eine Richtung schwankt.

Zusammenfassend besteht die Kernlogik darin, den RSI auf Überkauf/Überverkauf zu überwachen, auf der Grundlage konfigurierter RSI-Levels gegen den Trend zu handeln und Risiken über einen Stop-Loss zu managen.

Analyse der Vorteile

  • Der RSI ist ein bewährter Indikator für die Ermittlung von Überkauf-/Überverkaufswerten.

  • Der Handel gegen Extreme entspricht der Annahme einer Preisschwankung statt eines einseitigen Trends.

  • Stop Loss kontrolliert Verluste für einzelne Trades.

  • Einfaches und klares Backtesting-Rahmenwerk, leicht zu verstehen und zu ändern.

  • Flexible RSI-Parameter und Stop-Loss-Level, die sich an den sich ändernden Markt anpassen können.

Risikoanalyse

  • Der RSI ist ein trendfolgende Indikator, während eines anhaltenden Trends können kontinuierliche Verluste statt eines bereichsgebundenen Preises auftreten.

  • Falsche RSI-Parameter können mehr Signale erzeugen, aber mit einer niedrigeren Gewinnrate.

  • Der Stop-Loss kann durch kleine Bewegungen ausgelöst werden oder große Verluste verursachen, wenn er nicht ordnungsgemäß eingestellt ist.

  • Die Strategie funktioniert am besten auf einem Bereichsmarkt, kann jedoch bei starken Trendszenarien unterdurchschnittlich abschneiden.

  • Eine übermäßige Positionsgröße kann Verluste vergrößern.

Optimierungsrichtlinien

  • Kombinieren Sie den RSI mit anderen Indikatoren wie dem MACD, um die Signalgenauigkeit zu verbessern.

  • Untersuchen Sie statistische RSI-Verhaltensweisen mit verschiedenen Parametern, um optimale Einstellungen zu finden.

  • Dynamische Positionsgrößenmechanismen bei Rückversuchen prüfen.

  • Verwenden Sie ATR, um adaptive Stop-Loss-Levels festzulegen.

  • Anwendung von maschinellem Lernen, um optimale Parameterkombinationen zu finden.

  • Erforschen Sie die Kombination anderer Strategien zur Umkehrung der Mittelwerte mit RSI, um robuste Systeme aufzubauen.

Zusammenfassung

Die RSI-Range-Handelsstrategie macht einfache Umkehrgeschäfte auf der Grundlage von RSI-Überkauf/Überverkaufsniveaus und verwaltet das Risiko über Stop-Loss. Sie funktioniert für Bereichsgebundene oszillierende Märkte, hat aber Einschränkungen bei starken Trend-Szenarien. Feinabstimmung von Parametern, Verbesserung von Stop-Loss-Regeln, Kombination mit anderen Indikatoren und Strategien kann ihre Stabilität und Anpassungsfähigkeit verbessern. Insgesamt bietet diese Strategie einige wertvolle Einblicke, erfordert jedoch eine umsichtige Anwendung und Optimierung im Live-Handel.


/*backtest
start: 2022-10-30 00:00:00
end: 2023-11-05 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=5
strategy("Simple RSI Strategy", overlay=true)

var rsiLength = input(2, title = "rsi Length")
var float rsiBuyLevel = input(11, title = "What rsi level triggers a long")
var float rsiShortLevel = input(91, title = "What rsi level triggers a short")
var float maxRisk =  input(.05, title="Maximum risk/ trade")
var chartEntryStop = input(.005, title="Max Movment in the opposite direction / trade")
var float longEntryPrice = na
var float shortEntryPrice = na 
rsiValue = ta.rsi(close, rsiLength)

var float maxRiskValue = (strategy.equity * maxRisk) / chartEntryStop
var float maxRsi = 0

//Conditions


// Strategy Execution
if( close <= longEntryPrice-(longEntryPrice*chartEntryStop ))
    strategy.close("Long")

if( close >= shortEntryPrice+(shortEntryPrice*chartEntryStop ))
    strategy.close("Short")

if (rsiValue <= rsiBuyLevel and maxRsi == rsiShortLevel)
    maxRsi := rsiBuyLevel 
    strategy.close("Short")
    strategy.entry("Long", strategy.long)
    longEntryPrice := close
    
   
else if (rsiValue >= rsiShortLevel and maxRsi == rsiBuyLevel)
    maxRsi := rsiShortLevel
    strategy.close("Long")
    strategy.entry("Short", strategy.short)
    shortEntryPrice := close

else if (rsiValue >= rsiShortLevel )
    maxRsi := rsiShortLevel
    strategy.close("Long")

else if (rsiValue <= rsiBuyLevel )
    maxRsi := rsiBuyLevel
    strategy.close("Short")

Mehr