
Die Doppel-Brinband-Schock-Tracking-Strategie ist eine quantitative Handelsstrategie, die Preisschocks durch die Konstruktion eines Doppel-Brinbands erfasst. Die Strategie nutzt die Auf- und Abspannung des Brinbands, um die Chancen auf Marktschocks in Echtzeit zu erfassen.
Die Strategie berechnet zunächst die N-Tage-Gewinnlinie als Referenzlinie und berechnet dann die Auf- und Abfahrt der Bollinger Bands auf der Grundlage der Gewinnlinie in einer Größenordnung von mehreren Mal der Standardabweichung. Die Strategie verwendet die doppelte Bollinger Bands, d. h. die Ober- und Unterbahn sind mehrere Mal der Standardabweichung. Nach der Bildung der doppelten Bollinger Bands wird ein Kaufsignal ausgesendet, wenn der Preis in die Oberbahn bricht, und ein Verkaufssignal, wenn der Preis in die Unterbahn fällt, um auf diese Weise die Chance auf Preisschwankungen im Bollinger Band zu erfassen.
Die Strategie setzt gleichzeitig eine Zeitfenster ein, um die Rückmessung zu TARGET zu machen und zu verhindern, dass die vorherigen Daten den Test beeinflussen. Die gesamte Strategie-Betriebsphase besteht darin, ein doppeltes Brin-Band zu erstellen, die Kreuzung von Preis und Bahn als Handelssignal zu verwenden und eine Zeitfenster zu setzen, um die vorherigen Daten zu verhindern.
Der größte Vorteil dieser Strategie besteht darin, dass die Preisschwankungen in Echtzeit erfasst werden können, um die OPERATION-Richtung anhand eines Auf- und Abbruchs des Bollinger Bands zu bestimmen. Im Vergleich zu anderen Indikatoren reagiert der Bollinger Band auf den Markt sensibeler und kann in kürzerer Zeit ein Handelssignal erzeugen. Darüber hinaus bietet der Doppel-Bollinger-Band einen breiteren Kanal, der eine größere Wahrscheinlichkeit für einen Preisbruch bietet, um mehr Handelsmöglichkeiten zu ergreifen.
Das Hauptrisiko dieser Strategie liegt in der Einstellung der N-Tage- und Standarddifferenz-Mehrzahl der Parameter, von denen die Brin-Band abhängig ist. Eine falsche Einstellung der Parameter führt dazu, dass die Brin-Band zu breit oder zu schmal wird, was zu verpassten Handelschancen oder falschen Signalen führt. Außerdem ist kein Stop-Loss in bilateralen Transaktionen festgelegt, was zu einer Vergrößerung der Verluste führen kann.
Die Lösung besteht darin, die Parameter zu optimieren und die Verhältnisse der Brin-Band in Echtzeit zu bewerten. Außerdem kann eine Stop-Loss-Strategie auf der Grundlage historischer Daten entwickelt werden, um Einmalverluste zu kontrollieren.
Die Strategie kann vor allem in folgenden Bereichen optimiert werden:
Optimierung der Parameter des Brin-Bands, Anpassung der N-Tage und der Standarddifferenzmenge, damit der Brin-Band besser an die Merkmale der verschiedenen Märkte angepasst werden kann.
Erweiterung der Auftragserweiterung, um die Gewinnspanne zu erweitern, nachdem der ursprüngliche Auftrag einen gewissen Gewinn erzielt hat.
Setzen Sie eine Stop-Loss-Strategie, um Verluste zu verhindern, wenn der Preis in eine unvorteilhafte Richtung durch die Bollinger Band geht.
In Kombination mit anderen Indikatoren filtern Sie Signale aus, um falsche Signale in einem wackligen Markt zu vermeiden.
Die Strategie bietet die Möglichkeit, mehr Handelschancen in kurzer Zeit zu erfassen. Der Vorteil der Strategie liegt in der Sensibilität für Marktveränderungen und der schnellen Erzeugung von Handelssignalen. Die Risiken entstehen hauptsächlich aus falschen Parameter-Einstellungen und einem Mangel an Stop-Loss.
/*backtest
start: 2022-12-18 00:00:00
end: 2023-12-24 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=3
strategy("BB_BB", overlay=true,default_qty_type=strategy.percent_of_equity, default_qty_value=100.0, pyramiding=0)
length = input(20, minval=1)
src = input(close, title="Source")
mult = input(2.0, minval=0.001, maxval=50)
FromMonth = input(defval = 1, title = "From Month", minval = 1, maxval = 12)
FromDay = input(defval = 1, title = "From Day", minval = 1, maxval = 31)
FromYear = input(defval = 2017, title = "From Year", minval = 2017)
ToMonth = input(defval = 1, title = "To Month", minval = 1, maxval = 12)
ToDay = input(defval = 1, title = "To Day", minval = 1, maxval = 31)
ToYear = input(defval = 9999, title = "To Year", minval = 2017)
start = timestamp(FromYear, FromMonth, FromDay, 00, 00) // backtest start window
finish = timestamp(ToYear, ToMonth, ToDay, 23, 59) // backtest finish window
window() => true // create function "within window of time"
basis = sma(src, length)
dev = mult * stdev(src, length)
upper = basis + dev
lower = basis - dev
plot(basis, color=red)
p1 = plot(upper, color=blue)
p2 = plot(lower, color=blue)
fill(p1, p2)
buy = crossover(sma(close,1), upper) or crossover(sma(close,1), lower)
sell = crossunder(sma(close,1), upper) or crossunder(sma(close,1), lower)
if(buy)
strategy.entry("BUY", strategy.long, when = window())
if(sell)
strategy.entry("SELL", strategy.short, when = window())