
Die Strategie basiert auf Bollinger Bands, eröffnet Positionen, wenn der Preis die Bollinger Bands berührt, und setzt eine dynamische Stop-Operation und eine dynamische Aufwärtslogik. Wenn der Preis von der Unterseite zurückprallt und die Bollinger Bands durchbricht, wird eine Aufwärtstrend angenommen, und die Strategie wird bei einem Rückzug des Preises zurück in die Mitte eines bestimmten Prozentsatzes aufgenommen. Wenn der Preis schließlich die Bollinger Bands durchbricht, ist die Strategie erfolgreich.
Die Hauptprinzipien der Strategie lauten wie folgt:
Die Berechnungsformel für die Brin-Bänder auf, in und unter der Bahn. Die Berechnungsformel für die Oberbahn und die Unterbahn ist das N-fache der Standarddifferenz der Mittelbahn plus/minus, wobei N benutzerdefiniert ist.
Wenn der Schlusskurs die Bollinger-Band-Abwärtsspur verlässt, ohne zuvor eine Position eröffnet zu haben, wird eine Überposition eröffnet; wenn der Schlusskurs die Bollinger-Band-Abwärtsspur durchbricht, ohne zuvor eine Position eröffnet zu haben, wird eine Leerposition eröffnet. Die Logik des Aufmachens ist ähnlich wie bei einem traditionellen Bollinger-Band-Bruch.
Wenn der Kurs nach dem Aufschlag nach oben über die Brin-Band-Mitte geht, wird der Trend als aufwärts ausgewiesen. Das Variable wird als basisCrossed markiert. Wenn der Kurs nach unten über die Brin-Band-Mitte geht, wird das Variable als basisCrossed markiert.
In der Mehrköpfe-Situation, wenn der Schlusskurs nach unten abfällt und basisCrossed ist wahr, und der aktuelle Preis gegenüber dem ursprünglichen Eröffnungspreis um mehr als 2% gesunken ist, erhöht die Strategie die Position, während die basisCrossed auf false umgestellt wird. Der leere Fall ist das Gegenteil. Die Logik der Positionierung hier kann die Strategie dazu bringen, die Position zu senken, wenn der Trend sich zurückzieht, um den Gewinn zu erhöhen.
Wenn der Schlusskurs bei einer mehrköpfigen Position den Bollinger-Band überschreitet oder der Schlusskurs bei einer leeren Position den Bollinger-Band überschreitet, wird die Strategie ausgebremst, die Gewinne erwirtschaftet und die Markierungsvariablen umgestellt, um die nächste Position zu eröffnen.
Durch diese dynamische Logik von Positionen zu eröffnen, zu erhöhen und zu beenden, kann die Strategie flexibel im Trendbetrieb agieren und höhere Gewinne erzielen. Gleichzeitig kann die Strategie durch den klassischen technischen Indikator Brin-Band Trends erfassen, wodurch sie eine gewisse Anpassungsfähigkeit und Stabilität besitzt.
Dynamische Stopps: Die Strategie kann die Stop-Position dynamisch anpassen, indem sie die Bollinger Bands auf die Abfahrt bringt. Im Vergleich zu festen Stop-Positions kann die Strategie besser an Marktschwankungen angepasst werden und die Gewinne flexibel schützen.
Dynamische Verlagerung: Die Strategie erhöht sich im Rückzug nach der Trendbildung, so dass sie in einem Trend einen höheren Gewinn erzielen kann. Dynamische Verlagerung gibt der Strategie einen größeren Vorteil beim Trendhandel.
Flexibilität der Parameter: Die Parameter wie N-, P-Werte können flexibel angepasst werden, um unterschiedlichen Markteigenschaften und Handelsstilen gerecht zu werden.
Anpassungsfähigkeit: Die Brinband ist ein klassischer Technik-Indikator mit einer guten Trendfangfähigkeit. In Kombination mit dynamischem Positionsmanagement kann es in verschiedenen Finanzmärkten stabil wirken.
Logische Klarheit: Die Positionseröffnungsbedingungen und die Logik der Positionserhöhung und -reduzierung für die Strategie sind sehr klar, so dass sie von den Tradern leicht verstanden und beherrscht werden können. Eine klare Logik bedeutet auch, dass es einfacher ist, die zweite Entwicklung und die Strategie zu optimieren.
In den Schaukelmärkten: Die Bollinger Bands-Strategie funktioniert in den Schaukelmärkten eher schlecht, da häufige Positionsöffnungen zu höheren Handelskosten führen und somit die Gesamtergebnisse beeinträchtigen.
Trendwechsel: Die Strategie kann zu einem kritischen Zeitpunkt der Trendwechsel verurteilt werden, was zu einem positiven Anstieg in der falschen Richtung führt, was zu einem größeren Rückzug führt.
Extreme Situationen: In extremen Situationen (z.B. bei Sturm) kann es zu Abweichungen in der Brin-Band-Bewegung kommen, die die Strategie zum Scheitern bringen.
Parameter-Einstellungen: Unpassende Parameter-Einstellungen beeinträchtigen die Performance der Strategie, z. B. wenn der N-Wert zu klein ist, führt dies zu häufigen Transaktionen, und wenn der N-Wert zu groß ist, führt dies zu Signalverzögerungen.
Black Swan: Die Strategie könnte in einem großen politischen oder wirtschaftlichen Ereignis mit einem größeren Risiko verbunden sein.
Um diese Risiken zu kontrollieren, kann man in zwei Richtungen vorgehen: 1) die Parameter sind vernünftig eingestellt und für verschiedene Kennzahlen und Marktzustände optimiert; 2) mehr Filterbedingungen, wie Trendbeurteilung, Fluktuationsratefilter usw., werden in die Strategie aufgenommen, um die Qualität des Signals zu verbessern. Darüber hinaus müssen Positionskontrolle und Risikomanagement in der Praxis durchgeführt werden, um die Risikothek für Einzelgeschäfte streng zu kontrollieren.
Trendfilter: Logik, die bei der Eröffnung der Position zur Trendentscheidung verwendet wird, wie z. B. MA-Mehrkopf-Aufstellung als Filterbedingung für den Mehrwert und MA-Leerkopf-Aufstellung als Filterbedingung für den Leerwert, um die Erfolgsrate der Trendwahrnehmung zu erhöhen.
Der Brin-Band ist auch ein Indikator für die Volatilität. Er kann durch die Einführung von Indikatoren wie ATR und historischen Volatilitätsraten die Volatilität des Marktes identifizieren, um die Positionen bei hohen Wellen angemessen zu senken und bei niedrigen Wellen zu erhöhen, um das Risiko besser zu kontrollieren.
Dynamische Parameter-Optimierung: Die Parameter der Brin-Band können sich dynamisch an die Marktlage anpassen. So können sie den N-Wert bei Trends erhöhen und bei Schwankungen verringern. Dies erfordert Technologien wie maschinelles Lernen, um durch Training mit historischen Daten nach den optimalen Parametern zu suchen.
Kombinationsstrategien: Diese Strategie kann mit anderen klassischen Strategien wie MACD, RSI und anderen kombiniert werden, um eine Kombinationsstrategie zu bilden, die die Stabilität und Profitabilität des Systems verbessert.
Stop-Loss-Logik: Derzeit fehlt es an einer eindeutigen Stop-Loss-Logik für diese Strategie. Es kann in Betracht gezogen werden, Mechanismen wie bewegliche Stop-Loss- oder feste Prozentsatz-Stop-Loss-Mechanismen einzusetzen, um den maximalen Verlust eines einzelnen Handels zu kontrollieren.
Positionsmanagement-Optimierung: Die klassischen Positionsmanagement-Methoden wie die Kelly-Formel, optimale F-Werte und andere können in der Auf- und Abnahme von Positionen genutzt werden, um die Gewinne unter kontrollierbaren Risiken zu maximieren.
Durch diese Optimierung kann die Risikogewinnquote der Strategie weiter verbessert werden, so dass sie besser an die wechselnden Marktbedingungen angepasst werden kann und einen stabilen Ertrag für die Händler erzielt.
Die Brin-Strategie ist eine klassische Trend-Tracking-Strategie, die auf der Brin-Strategie basiert, um durch die dynamische Anpassung der Position höhere Trendgewinne zu erzielen. Die Strategie ist logisch klar, die Parameter sind flexibel und anpassungsfähig. Eine quantitative Handelsstrategie, die es wert ist, eingehend untersucht und angewendet zu werden.
/*backtest
start: 2024-03-01 00:00:00
end: 2024-03-21 00:00:00
period: 1h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=5
// Bollinger Bands 1Bb 상하한 크로스 롱숏 실행
strategy(shorttitle="BB", title="Bollinger Bands", overlay=true )
// bb
length = input.int(12, minval=1)
src = input(close, title="Source")
mult = input.float(2.0, minval=0.001, maxval=50, title="StdDev")
basis = ta.sma(src, length)
dev = mult * ta.stdev(src, length)
upper = basis + dev
lower = basis - dev
offset = input.int(0, "Offset", minval = -500, maxval = 500)
plot(basis, "Basis", color=#FF6D00, offset = offset)
p1 = plot(upper, "Upper", color=#2962FF, offset = offset)
p2 = plot(lower, "Lower", color=#2962FF, offset = offset)
add = input.float(0.98, step = 0.001)
// plot(upper - lower, "Basis", color=color.red, offset = offset)
var bool entryMade = false
var bool basisCrossed = false
var bool upperCrossed = false
var bool lowerCrossed = false
strategy.initial_capital = 50000
if close < lower and not entryMade
strategy.entry("롱", strategy.long, qty = strategy.initial_capital/10000)
entryMade := true
if ta.crossover(close, basis) and entryMade and not upperCrossed
basisCrossed := true
if close > upper
upperCrossed := true
if close < lower and entryMade and basisCrossed and not upperCrossed and close < strategy.position_avg_price*add
strategy.entry("추가롱", strategy.long, strategy.initial_capital/10000)
basisCrossed := false
if close > upper
strategy.close("롱")
strategy.close("추가롱")
entryMade := false
basisCrossed := false
upperCrossed := false
///////////반대 포지션
if close > upper and not entryMade
strategy.entry("s", strategy.short, qty = strategy.initial_capital/10000)
entryMade := true
if ta.crossunder(close, basis) and entryMade and not lowerCrossed
basisCrossed := true
if close < lower
lowerCrossed := true
if close > upper and entryMade and basisCrossed and not lowerCrossed and close > strategy.position_avg_price*add
strategy.entry("추가s", strategy.short, strategy.initial_capital/10000)
basisCrossed := false
if close < lower
strategy.close("s")
strategy.close("추가s")
entryMade := false
basisCrossed := false
upperCrossed := false