Bollinger-Bänder und RSI-Kurzverkaufsstrategie

Schriftsteller:ChaoZhang, Datum: 15.12.2023
Tags:

img

Übersicht

Die Bollinger Bands und RSI Short-Selling-Strategie ist eine kurzfristige Handelsstrategie, die auf Bollinger Bands und dem Relative Strength Index (RSI) basiert. Sie kombiniert Bollinger Bands, um zu messen, ob der Markt überhitzt ist, und RSI, um die Dynamik des Marktes zu bestimmen, um Leerverkaufsmöglichkeiten zu identifizieren.

Strategie Logik

Die Strategie stützt sich auf zwei Hauptindikatoren:

  1. Bollinger Bands. Bollinger Bands bestehen aus einem mittleren Band, einem oberen Band und einem unteren Band. Das mittlere Band ist der n-tägige gleitende Durchschnitt. Die oberen und unteren Bands sind n Standardabweichungen über und unter dem mittleren Band. Wenn der Preis vom unteren Band zum oberen Band springt, gilt der Markt als überhitzt. Wenn der Preis vom oberen Band zum unteren Band zurückfällt, ist der Markt abgekühlt.

  2. RSI. RSI vergleicht den durchschnittlichen Gewinn und Verlust über einen Zeitraum, um die Stärke von Aufwärtstrends und Abwärtstrends zu bestimmen. Wenn der RSI über 70 liegt, signalisiert er, dass der Preis überhitzt ist. Wenn der RSI unter 30 liegt, signalisiert er, dass der Preis überverkauft ist.

Die spezifische Handelslogik lautet:

  1. Wenn der Preis über das obere Bollinger-Band bricht und der RSI größer als 70 ist, löst er das Bollinger-Überhitzungssignal und das RSI-Überkaufssignal aus und geht somit kurz.

  2. Wenn der Preis unter den unteren Bollinger-Band fällt, wird der Markt kälter und die Position wird geschlossen.

Die Strategie legt außerdem einen Stop-Loss und einen Take-Profit fest:

  1. Der Stop-Loss wird zum Einstiegspreis * (1+1%) festgelegt, d. h. bei einem Verlust von 1%.

  2. Der Gewinn wird zum Einstiegspreis * (1-7%) festgelegt, d. h. ein Gewinn von 7% wird erzielt und dann die Position geschlossen.

Vorteile

Die Strategie weist folgende Vorteile auf:

  1. Kombiniert Bollinger Bands und RSI, vermeidet die Wahrscheinlichkeit von Fehleinschätzungen aus einem einzigen Indikator.

  2. Verwendet Bollinger-Bänder und RSI-Überkauft-Überverkauft-Bereiche, um genaue Ein- und Ausstiegszeiten für kurzfristige Trades zu bestimmen.

  3. Die Sätze stop loss und take profit vor dem Einstieg zur Risikokontrolle.

  4. Einfache und klare Logik, leicht zu verstehen und umzusetzen.

  5. Flexible Bollinger-Bänder und RSI-Parameter, die an unterschiedliche Zeiträume und Marktumgebungen angepasst werden können.

Risiken

Trotz der Vorteile hat die Strategie einige Risiken zu mindern:

  1. Sowohl Bollinger-Bänder als auch RSI sind Trendindikatoren, die nicht für Bereichs- oder richtungslose Märkte geeignet sind.

  2. Kann nicht garantieren, dass Stop Loss und Take Profit immer perfekt ausgelöst werden.

  3. Extreme Marktbewegungen könnten den Stop-Loss durchdringen und zu übererwarteten Verlusten führen.

  4. Es erfordert eine ständige Anpassung der Indikatoren an die sich wandelnden Märkte.

Entsprechende Risikomanagementmethoden:

  1. Verwenden Sie Basisindikatoren wie gleitende Durchschnitte, um den lokalen Trend zu bestimmen, und vermeiden Sie unnötige Probleme.

  2. Senkung der Positionsgröße, Diversifizierung auf Strategien, um Risiken zu verteilen.

  3. Erweitern Sie den Stop-Loss-Prozentsatz oder setzen Sie Super-Stops, um extremen Marktbewegungen standzuhalten.

  4. Die Parameter werden kontinuierlich anhand der Ergebnisse der Live-Tests angepasst.

Optimierungsmöglichkeiten

Zur weiteren Optimierung der Strategie könnten mehrere Aspekte berücksichtigt werden:

  1. Einbeziehung anderer Indikatoren, um unnötige Whipsaws zu vermeiden, z. B. EMA, MACD.

  2. Test für optimale Parameter für verschiedene Produkte und Zeitrahmen, z. B. 15m, 30m, 1h für führende Kryptowährungen und Aktien.

  3. Implementieren dynamischer Stopps und Anpassung des Stoppniveaus anhand der Echtzeit-Marktvolatilität, um das Risiko von Stoppläufen zu verringern.

  4. Betrachten Sie die Optimierung über maschinelle Lernalgorithmen, um automatisch optimale Parameter oder komplexere Muster zu finden.

Schlussfolgerung

Die kurzfristige Strategie identifiziert zunächst die optimale Kurzverkaufszeit durch Messung der Markttemperatur und -dynamik mit Bollinger Bands und RSI. Sie kontrolliert dann das Risiko mit Stop-Loss und Take-Profit. Ihr Vorteil liegt in der Einfachheit und Leichtigkeit der Umsetzung. Die wichtigsten Risiken stammen aus Indikatorbeschränkungen und Stop-Runs. Lösungen umfassen die Einbeziehung mehrer Indikatoren, die dynamische Abstimmung von Parametern und die Ermöglichung breiterer Stops.


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

// This source code is subject to the terms of the Mozilla Public License 2.0 at https://mozilla.org/MPL/2.0/
// © Coinrule
// Works best on 30m, 45m timeframe

//@version=5
strategy("Bollinger Bands and RSI Short Selling",
         overlay=true,
         initial_capital = 1000,
         default_qty_value = 30,
         default_qty_type = strategy.percent_of_equity,
         commission_type=strategy.commission.percent,
         commission_value=0.1)

//Backtest period
timePeriod = time >= timestamp(syminfo.timezone, 2021, 12, 1, 0, 0)
notInTrade = strategy.position_size <= 0

//Bollinger Bands Indicator
length = input.int(20, minval=1)
src = input(close, title="Source")
mult = input.float(2.0, minval=0.001, maxval=50, title="StdDev")
basis = ta.sma(src, length)
dev = mult * ta.stdev(src, length)
upper = basis + dev
lower = basis - dev
offset = input.int(0, "Offset", minval = -500, maxval = 500)
plot(basis, "Basis", color=#FF6D00, offset = offset)
p1 = plot(upper, "Upper", color=#2962FF, offset = offset)
p2 = plot(lower, "Lower", color=#2962FF, offset = offset)
fill(p1, p2, title = "Background", color=color.rgb(33, 150, 243, 95))


// RSI inputs and calculations
lengthRSI = 14
RSI = ta.rsi(close, lengthRSI)
oversold= input(30)


//Stop Loss and Take Profit for Shorting
Stop_loss= ((input (1))/100)
Take_profit= ((input (7)/100))

shortStopPrice  = strategy.position_avg_price * (1 + Stop_loss)
shortTakeProfit = strategy.position_avg_price * (1 - Take_profit)

//Entry and Exit
strategy.entry(id="short", direction=strategy.short, when=ta.crossover(close, upper) and RSI < 70 and timePeriod and notInTrade)

if (ta.crossover(upper, close) and RSI > 70 and timePeriod)
    strategy.exit(id='close', stop = shortTakeProfit, limit = shortStopPrice)

    


Mehr