Die Ressourcen sind geladen. Beförderung...

Bollinger-Bands-Trendumkehrstrategie

Schriftsteller:ChaoZhang, Datum: 2023-12-07 16:08:05
Tags:

img

Übersicht

Diese Strategie verwendet die Beziehung zwischen dem oberen Band, dem mittleren Band, dem unteren Band der Bollinger Bands und dem gleitenden Durchschnitt über 200 Tage, um die Trendrichtung zu bestimmen.

Grundsätze

  1. Bollinger-Band-Tendenzen: Beide Bollinger-Band-Band-Band-Band-Band-Band-Band-Band-Band-Band-Band-Band-Band-Band-Band-Band-Band-Band-Band-Band-Band-Band-Band-Band-Band-Band-Band-Band-Band-Band-Band-Band-Band-Band-Band-Band-Band-Band-Band-Band-Band-Band-Band-Band-Band-Band-Band-Band-Band-Band-Band-Band-Band-Band-Band-Band-Band-Band-Band-Band-Band-Band-Band-Band-Band-Band-Band-Band-Band-Band-Band-Band-Band-Band-Band-Band-Band-Band-Band-B
  2. Eintritt: Long gehen, wenn der Preis im Aufwärtstrend das untere Band berührt. Short gehen, wenn der Preis im Abwärtstrend das obere Band berührt.
  3. Ausgang: Bei Long, Schließposition, wenn der Preis den oberen Bereich berührt oder unter den 250-Tage-Simple Moving Average bricht.

Vorteile

  1. Verwenden Sie Bollinger-Bänder, um die Trendrichtung zu bestimmen, und vermeiden Sie wiederholten Handel ohne klare Richtung.
  2. Wenn die Trendrichtung klar ist, sollten die entsprechenden Ein- und Ausgänge auf der Grundlage des Volatilitätsbereichs der Bollinger-Bänder erfolgen.
  3. Zusätzliche Filterung mit gleitenden Durchschnitten, um unerwartete Verluste zu vermeiden.

Risiken und Lösungen

  1. Eine falsche Einstellung der Bollinger-Bänder-Parameter führt zu Fehleinschätzungen: Anpassen der Parameter, um die optimale Periodenlänge zu finden.
  2. Unzulässige gleitende Durchschnittsparameter, die zu Überhandelungen oder unerwünschten Verlusten führen: Verschiedene Parameter testen, um die stabilsten zu finden.
  3. Plötzliche Marktänderungen aufgrund wichtiger Nachrichten verursachen Anomalien: Setzen Sie Stop Loss auf Limit pro Handelsverlust.

Optimierungsrichtlinien

  1. Testen Sie die Leistung der Strategie über verschiedene Parameterperioden hinweg, um die optimalen Parameter zu finden.
  2. Hinzufügen Sie einen Stop-Loss-Mechanismus, um große Verluste unter anomalen Marktbedingungen zu vermeiden.
  3. Einbeziehung anderer Indikatoren zur Bestätigung der Eintrittssignale zur Verbesserung der Gewinnrate.

Schlussfolgerung

Diese Strategie bestimmt zunächst die Trendrichtung mit Bollinger Bands. Anschließend wird der Volatilitätsbereich der Bollinger Bands zusammen mit gleitenden Durchschnitten genutzt, um ein Handelssystem zu bilden, das die Richtkorrektheit gewährleistet und anständige Gewinne erzielt. Es gibt immer noch einige Probleme bei der Parameterwahl und dem Stop Loss, die durch Optimierung und Mechanismuszusätze weiter verbessert werden können, um eine bessere Leistung zu erzielen.


/*backtest
start: 2023-11-29 00:00:00
end: 2023-12-06 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/
// © Aayonga

//@version=5
strategy("boll trend", overlay=true,initial_capital=1000,default_qty_type=strategy.fixed, default_qty_value=1 )
bollL=input.int(20,minval=1,title = "length")
bollmult=input.float(2.3,minval=0,step=0.1,title = "mult")
basis=ta.ema(close,bollL)
dev=bollmult*ta.stdev(close,bollL)
upper=basis+dev

lower=basis-dev

smaL=input.int(200,minval=1,step=1,title = "trend")
sma=ta.sma(close,smaL)
//多头趋势
longT=upper>sma and basis>sma and lower>=sma
//空头趋势
shortT=upper<sma and basis<sma and lower<=sma

//入场位
longE=ta.crossover(close,lower)

shortE=ta.crossover(close,upper)

//出场位

longEXIT=ta.crossover(high,upper) or ta.crossunder(close,ta.sma(close,300))
shortEXIT=ta.crossunder(low,lower) or ta.crossover(close,ta.sma(close,250)) 

if longT and longE 
    strategy.entry("多long",strategy.long)

if longEXIT
    strategy.close("多long",comment = "close long")

if shortE and shortT 
    strategy.entry("空short",strategy.short)

if shortEXIT
    strategy.close("空short",comment = "close short")

Mehr