Double-Band-Breakout-Strategie


Erstellungsdatum: 2023-12-25 13:20:31 zuletzt geändert: 2023-12-25 13:20:31
Kopie: 0 Klicks: 746
1
konzentrieren Sie sich auf
1623
Anhänger

Double-Band-Breakout-Strategie

Überblick

Die Doppelbandbruchstrategie ist eine Trendverfolgungsstrategie. Sie nutzt die Auf- und Abwärtsbahnen der Bands, um die Preisentwicklung zu beurteilen, und erstellt mehrere Positionen, wenn der Preis die innere Bandbrechung durchbricht, und schließt die Position, wenn der Preis die äußere Bandbrechung durchbricht.

Strategieprinzip

Die Strategie berechnet zunächst die Mittellinie und die Standarddifferenz innerhalb des angegebenen Zeitraums und erstellt eine doppelte Bandbreite durch Anpassung der Standarddifferenzwerte. Die innere Bandbreite besteht aus einer positiven und einer negativen Standarddifferenz der Mittellinie und die äußere Bandbreite aus einer positiven und einer negativen Standarddifferenz der Mittellinie.

Wenn der Preis die innere Aufwärtsbahn durchbricht, wird der Markt als Bullmarkt betrachtet, also mehr gemacht; wenn der Preis die innere Abwärtsbahn durchbricht, wird der Markt als Bearmarkt betrachtet, also leer gemacht.

Der Stop-Out nach dem Overschlag ist der Fall des Preises auf die externe Unterbahn. Der Stop-Out nach dem Leerlauf ist der Preisbruch auf die externe Oberbahn.

Die Strategie beinhaltet auch Ausstiegsmechanismen wie Stop Loss, Stop Loss und Tracking Stop Loss.

Analyse der Stärken

Die Doppelbandbrechstrategie hat folgende Vorteile:

  1. Die Verwendung von doppelten Bandbreiten zur Bestimmung von Preisbewegungen ermöglicht eine effiziente Trendverfolgung.
  2. Das Unternehmen hat sich in der Vergangenheit bemüht, die Risiken der Interne Volatilität zu überwinden und unnötige Umkehrgeschäfte zu vermeiden.
  3. Einrichtung von Stop-Loss-Systemen und Tracking-Systemen, um Risiken wirksam zu kontrollieren;
  4. Die Parameter sind anpassbar und können für verschiedene Sorten optimiert werden.

Risikoanalyse

Die Strategie der Doppelwellenbündelung birgt einige Risiken:

  1. In den letzten Jahren hat sich die Situation in den USA verschlechtert.
  2. Die falsche Einstellung der Parameter kann dazu führen, dass die Lagerhaltung zu leicht oder zu schwer zu stoppen ist.
  3. Durchbrüche können manchmal durch falsche Signale gekennzeichnet sein, wodurch das Risiko eines falschen Durchbruchs besteht.

Die Parameter können für die oben genannten Risiken angepasst oder in Kombination mit anderen Indikatoren gefiltert werden, oder die Wirksamkeit des Durchbruchs kann manuell überwacht werden, um das Risiko zu verringern.

Optimierungsrichtung

Die Doppelbandbrechungsstrategie kann in folgenden Bereichen optimiert werden:

  1. Optimierung der Parameter für die Durchschnittslinie und die Standardabweichung, um die Bandbreiten besser an die Eigenschaften der verschiedenen Sorten anzupassen;
  2. Erweiterte Filterung von Indikatoren wie Volume und MACD, um falsche Durchbrüche zu vermeiden.
  3. Dynamische Optimierung der Parameter mit Hilfe von maschinellen Lernmethoden;
  4. Strategie replizieren in der Hochfrequenz, um die Gewinnspanne zu erweitern.

Zusammenfassen

Eine typische Trend-Tracking-Strategie ist die Doppelband-Breakout-Strategie, bei der die Position des Preises gegenüber der Bandbreite beurteilt wird, um ein Handelssignal zu erstellen. Die Strategie nutzt die Doppelbandbreite, um die Gewinnzone einzurichten, und setzt eine wissenschaftliche Ausstiegsmechanik ein, um das Risiko zu kontrollieren.

Strategiequellcode
/*backtest
start: 2023-12-17 00:00:00
end: 2023-12-24 00:00:00
period: 15m
basePeriod: 5m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=2
strategy("BB Strat",default_qty_type = strategy.percent_of_equity, default_qty_value = 100,currency="USD",initial_capital=100, overlay=true)
l=input(title="length",defval=100)
pbin=input(type=float,step=.1,defval=.25)
pbout=input(type=float,step=.1,defval=1.5)
ma=sma(close,l)
sin=stdev(ma,l)*pbin
sout=stdev(ma,l)*pbout
inu=sin+ma
inb=-sin+ma
outu=sout+ma
outb=-sout+ma
plot(inu,color=lime)
plot(inb,color=lime)
plot(outu,color=red)
plot(outb,color=yellow)

inpTakeProfit = input(defval = 0, title = "Take Profit", minval = 0)
inpStopLoss = input(defval = 0, title = "Stop Loss", minval = 0)
inpTrailStop = input(defval = 0, title = "Trailing Stop Loss", minval = 0)
inpTrailOffset = input(defval = 0, title = "Trailing Stop Loss Offset", minval = 0)
useTakeProfit = inpTakeProfit >= 1 ? inpTakeProfit : na
useStopLoss = inpStopLoss >= 1 ? inpStopLoss : na
useTrailStop = inpTrailStop >= 1 ? inpTrailStop : na
useTrailOffset = inpTrailOffset >= 1 ? inpTrailOffset : na


longCondition = close>inu and rising(outu,1) 
exitlong = (open[1]>outu and close<outu) or crossunder(close,ma)

shortCondition = close<inb and falling(outb,1)
exitshort = (open[1]<outb and close>outb) or crossover(close,ma)

strategy.entry(id = "Long", long=true, when = longCondition)
strategy.close(id = "Long", when = exitlong)
strategy.exit("Exit Long", from_entry = "Long", profit = useTakeProfit, loss = useStopLoss, trail_points = useTrailStop, trail_offset = useTrailOffset, when=exitlong)

strategy.entry(id = "Short", long=false, when = shortCondition)
strategy.close(id = "Short", when = exitshort)
strategy.exit("Exit Short", from_entry = "Short", profit = useTakeProfit, loss = useStopLoss, trail_points = useTrailStop, trail_offset = useTrailOffset, when=exitshort)