RSI und Bollinger Bands profitable Strategie

Schriftsteller:ChaoZhang, Datum: 2024-01-08 11:14:31
Tags:

img

Übersicht

Diese Strategie verwendet hauptsächlich den RSI-Indikator und Bollinger-Bänder, um Handelsregeln zu entwerfen und Gewinne in Trendmärkten zu erzielen. Es geht lang, wenn der RSI unter der Überkauflinie liegt und der Preis in der Nähe des unteren Bands der Bollinger-Bänder liegt; es geht kurz, wenn der RSI über der Überverkaufslinie liegt und der Preis in der Nähe des oberen Bands liegt. Dies ist die grundlegende Handelslogik.

Strategie Logik

Die Strategie verwendet den RSI-Indikator, um überkaufte und überverkaufte Niveaus zu identifizieren. RSI unterhalb der überkauften Schwelle gilt als Überverkaufssignal, während über der überverkauften Schwelle ein Überkaufssignal gilt. Der Bollinger Bands-Indikator wird verwendet, um Preisbruch zu erkennen.

Die Strategie kombiniert RSI zur Messung der Marktstimmung und Bollinger Bands zum Erkennen von Preisbruch. Trades werden nur geöffnet, wenn beide Bedingungen gleichzeitig erfüllt sind. Dies hilft, gefälschte Signale auszufiltern und die Strategieleistung zu verbessern.

Stärken

Die Strategie kombiniert RSI und Bollinger Bands, die helfen, den Markttrend besser zu bestimmen und die Dynamik zu erfassen. Im Vergleich zu Einzelindikatorstrategien filtert sie mehr falsche Signale aus und erzeugt qualitativ hochwertigere Signale.

Die Strategie eröffnet nur dann Trades, wenn sowohl der RSI als auch der BB gleichzeitig Signale geben. Dies verhindert die Störung durch gefälschte Signale. Mit einem Stop-Loss in Tempo können Risiken auch kontrolliert werden, wenn sich der Markt dreht.

Risikoanalyse

Obwohl die Strategie einige falsche Signale ausfiltert, können RSI und BB immer noch falsche Signale gleichzeitig in verschiedenen Märkten geben und unnötige Verluste verursachen.

Es wird empfohlen, die Parameter durch Backtesting zu optimieren, um die beste Parameterkombination zu finden. Auch sollten Sie den Handel in verschiedenen Märkten pausieren, um unnötige Verluste zu vermeiden.

Verbesserungsbereiche

Die Strategie kann in folgenden Bereichen verbessert werden:

  1. Optimierung der RSI- und BB-Parameter für die beste Kombination

  2. Hinzufügen anderer Indikatoren als Filtersignale, wie MACD, KD usw.

  3. Zusatz der Durchbruchvalidierung, um falsche Ausbrüche zu vermeiden

  4. Anpassung der Parameter oder Einstellung des Handels je nach unterschiedlichen Marktbedingungen

  5. Optimierung von Stop Loss für dynamischen Stop Loss

Schlussfolgerung

Die Strategie kombiniert RSI und Bollinger Bands, um Handelsregeln zu entwerfen. Indem man nur Signale nimmt, wenn beide zustimmen, können gefälschte Signale effektiv herausgefiltert werden. Durch Parameteroptimierung, Hinzufügen von Signalfiltern, Stop-Loss-Optimierung usw. kann diese Strategie ständig für stabilere Gewinne verfeinert werden.


/*backtest
start: 2023-12-08 00:00:00
end: 2024-01-07 00:00:00
period: 1h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=5
strategy("Get Funded Easily by mjanusic", shorttitle="FTMO Crusher by mjanusic", overlay=true)

///////////// RSI
RSIlength = input(16, title="RSI Period Length")
RSIvalue = input(45, title="RSI Value Range")
RSIoverSold = 0 + RSIvalue
RSIoverBought = 100 - RSIvalue
price = close
vrsi = ta.rsi(price, RSIlength)

///////////// Bollinger Bands
BBlength = input(20, title="Bollinger Bands SMA Period Length")
BBmult = input(2.0, title="Bollinger Bands Standard Deviation")
BBbasis = ta.sma(price, BBlength)
BBdev = BBmult * ta.stdev(price, BBlength)
BBupper = BBbasis + BBdev
BBlower = BBbasis - BBdev
source = close
buyCondition = ta.crossover(vrsi, RSIoverSold) and ta.crossover(source, BBlower)
sellCondition = ta.crossunder(vrsi, RSIoverBought) and ta.crossunder(source, BBupper)

///////////// RSI + Bollinger Bands Strategy
if (not na(vrsi))
    if (buyCondition)
        strategy.entry("Long Entry", strategy.long, stop=BBlower, comment="Long Entry")
    else
        strategy.cancel(id="Long Entry")

    if (sellCondition)
        strategy.entry("Short Entry", strategy.short, stop=BBupper, comment="Short Entry")
    else
        strategy.cancel(id="Short Entry")

//plot(strategy.equity, title="equity", color=color.red, linewidth=2, style=plot.style_area)


Mehr