Dynamik-Trend-Doppelstrategie

Schriftsteller:ChaoZhang, Datum: 2024-01-22 17:04:36
Tags:

img

Übersicht

Diese Strategie kombiniert den Relative Strength Index (RSI) und die Bollinger Bands Indikatoren, um eine doppelte Bestätigungslogik für Ein- und Ausgänge zu implementieren. Sie erzeugt Handelssignale nur, wenn sowohl der RSI als auch die Bollinger Bands gleichzeitig Überkauf- oder Überverkaufssignale zeigen. Dies kann die falschen Signale effektiv reduzieren und die Stabilität der Strategie verbessern.

Strategie Logik

  1. RSI-Urteilslogik
    • Überschreitung des RSI über 45 gilt als Überverkauftes Signal
    • Ein RSI-Kreuz unter 55 gilt als Überkaufsignal
  2. Bollinger-Bänder Urteilslogik
    • Ein Preisüberschreiten über die Bollinger-Unterband wird als Überverkauf betrachtet.
    • Der Preisüberschreitung unterhalb der oberen Bollinger Band wird als überkauft angesehen.
  3. Logik der doppelten Bestätigung
    • Eine Long-Position wird nur geöffnet, wenn sowohl der RSI als auch die Bollinger Bands ein Überverkaufssignal zeigen
    • Eine Leerposition wird nur geöffnet, wenn sowohl der RSI als auch die Bollinger Bands ein Überkaufsignal zeigen

Die obige Logik implementiert eine stabile Doppelbestätigungsstrategie für Ein- und Ausgänge.

Analyse der Vorteile

  1. Der Doppelbestätigungsmechanismus filtert viele Lärmgeschäfte aus, vermeidet unnötige Geschäfte, senkt die Handelskosten und verbessert die Rentabilität.

  2. Der RSI ist effektiv bei der Identifizierung von Trends und Umkehrungen. Bollinger Bands ist effektiv bei der Beurteilung von Unterstützungen und Widerständen. Die beiden ergänzen sich perfekt.

  3. Flexible Parameter-Einstellungen, anhand verschiedener Produkte und Handelspräferenzen angepasst werden können, sehr anpassungsfähig.

Risikoanalyse

  1. In den Rangierungsmärkten können RSI und Bollinger Bands gleichzeitig falsche Signale geben, was zu unnötigen Verlusten führt.

  2. Der Doppelbestätigungsmechanismus erhöht die Eintrittsverzögerung leicht und verpasst möglicherweise sehr kurzfristige Handelsmöglichkeiten.

  3. Die Strategie ist sehr empfindlich gegenüber Parametern. Unangemessene Parameter-Einstellungen können die Rentabilität erheblich reduzieren. Es sind ausreichende Backtests und Überprüfungen erforderlich, um die optimale Parameterkombination zu finden.

Optimierungsrichtlinien

  1. Testen Sie RSI-Indikatoren mit verschiedenen Perioden, um den besten Parameter für die entsprechende Periode zu finden, um die Effizienz zu verbessern.

  2. Hinzufügen einer Stop-Loss-Logik, Festlegen eines angemessenen beweglichen Stop-Loss oder eines festen Stop-Loss, um das Risiko eines einzigen Handelsverlusts zu kontrollieren.

  3. Test Bollinger Bandbreitenparameter, um den Kanalbereich zu optimieren und die Effizienz zu verbessern.

  4. Verschiedene Preisinputs wie nahe, hoch, niedrig usw. testen, um den besten Preisinput zur Steigerung der Stabilität zu finden.

Zusammenfassung

Die Strategie kombiniert erfolgreich die Indikatoren RSI und Bollinger Bands, um eine doppelte Bestätigungslogik zu implementieren, um ausreichende Handelsmöglichkeiten zu gewährleisten und gleichzeitig den Lärm zu reduzieren.


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

//@version=2
strategy("Bollinger + RSI, Double Strategy (by ChartArt)", shorttitle="CA_-_RSI_Bol_Strat", overlay=true)

// ChartArt's RSI + Bollinger Bands, Double Strategy
//
// Version 1.0
// Idea by ChartArt on January 14, 2015.
//
// This strategy uses a modfied RSI to sell
// when the RSI increases over the value of 55
// (or to buy when the value falls below 45),
// with the classic Bollinger Bands strategy
// to sell when the price is above the
// upper Bollinger Band (and to buy when
// this value is below the lower band).
//
// This simple strategy only triggers when
// both the RSI and the Bollinger Bands
// indicators are at the same time in
// a overbought or oversold condition.
//
// List of my work: 
// https://www.tradingview.com/u/ChartArt/
// 
//  __             __  ___       __  ___ 
// /  ` |__|  /\  |__)  |   /\  |__)  |  
// \__, |  | /~~\ |  \  |  /~~\ |  \  |  
// 
// 


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


///////////// Bollinger Bands
BBlength = input(20, minval=1,title="Bollinger Bands SMA Period Length")
BBmult = input(2.0, minval=0.001, maxval=50,title="Bollinger Bands Standard Deviation")
BBbasis = sma(price, BBlength)
BBdev = BBmult * stdev(price, BBlength)
BBupper = BBbasis + BBdev
BBlower = BBbasis - BBdev
source = close
buyEntry = crossover(source, BBlower)
sellEntry = crossunder(source, BBupper)
plot(BBbasis, color=aqua,title="Bollinger Bands SMA Basis Line")
p1 = plot(BBupper, color=silver,title="Bollinger Bands Upper Line")
p2 = plot(BBlower, color=silver,title="Bollinger Bands Lower Line")
fill(p1, p2)


///////////// Colors
switch1=input(true, title="Enable Bar Color?")
switch2=input(true, title="Enable Background Color?")
TrendColor = RSIoverBought and (price[1] > BBupper and price < BBupper) ? red : RSIoverSold and (price[1] < BBlower and price > BBlower)  ? green : na
barcolor(switch1?TrendColor:na)
bgcolor(switch2?TrendColor:na,transp=50)


///////////// RSI + Bollinger Bands Strategy
if (not na(vrsi))

    if (crossover(vrsi, RSIoverSold) and crossover(source, BBlower))
        strategy.entry("RSI_BB_L", strategy.long, stop=BBlower,  comment="RSI_BB_L")
    else
        strategy.cancel(id="RSI_BB_L")
        
    if (crossunder(vrsi, RSIoverBought) and crossunder(source, BBupper))
        strategy.entry("RSI_BB_S", strategy.short, stop=BBupper, comment="RSI_BB_S")
    else
        strategy.cancel(id="RSI_BB_S")

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

Mehr