
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.
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.
Die Doppelbandbrechstrategie hat folgende Vorteile:
Die Strategie der Doppelwellenbündelung birgt einige Risiken:
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.
Die Doppelbandbrechungsstrategie kann in folgenden Bereichen optimiert werden:
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.
/*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)