BB Moving Average Breakout-Strategie

SMA EMA SMMA RMA WMA VWMA STDDEV
Erstellungsdatum: 2024-06-14 15:21:03 zuletzt geändert: 2024-06-14 15:21:03
Kopie: 1 Klicks: 624
1
konzentrieren Sie sich auf
1617
Anhänger

BB Moving Average Breakout-Strategie

Überblick

Die Strategie basiert auf den Bollinger Bands und erzeugt Handelssignale, indem die Preise die Bollinger Bands durchbrechen und nach unten gehen. Wenn die Preise nach oben gehen, machen Sie mehr, wenn die Preise nach unten gehen, machen Sie leer. Gleichzeitig ist die Strategie darauf ausgerichtet, die Volatilität des Marktes zu erfassen.

Strategieprinzip

  1. Der Moving Average für die angegebene Periode wird als Mittelstraße für die Brin-Band berechnet, wobei verschiedene Arten von Moving Averages wie SMA, EMA, SMMA, WMA und VWMA gewählt werden können.
  2. Die Standarddifferenz der mittleren Bahn plus oder minus ein bestimmtes Vielfaches wird als die obere und untere Bahn des Brin-Bandes berechnet.
  3. Bei einem Kursbruch entsteht ein Mehrwertsignal und bei einem Kursbruch ein Leerwertsignal.
  4. Wenn Sie mehrere Optionen halten, platzieren Sie die Position, wenn der Preis nach unten fällt. Wenn Sie keine Optionen halten, platzieren Sie die Position, wenn der Preis nach oben fällt.

Analyse der Stärken

  1. Die Brin-Band ist ein sehr gutes Instrument, um die Volatilität des Marktes zu quantifizieren und ein klares Handelssignal zu liefern, wenn die Preisschwankungen zunehmen.
  2. Die Strategie setzt gleichzeitig die Stop-Loss-Bedingungen, um das Risiko effektiv zu kontrollieren.
  3. Die Strategieparameter sind anpassbar und können für verschiedene Sorten und Zyklen optimiert werden.

Risikoanalyse

  1. In einem wackligen Markt können häufige Preiserhebungen der Bollinger Bands zu einem zu häufigen Handelssignal führen, was zu erhöhten Handelskosten führt.
  2. Brin hat eine gewisse Verzögerung, wenn sich der Markt schnell verändert, kann es zu einer Verzögerung des Handelssignals kommen.
  3. Die falsche Auswahl der Brin-Band-Parameter kann zu einer schlechten Strategie führen, die für verschiedene Sorten und Zyklen optimiert werden muss.

Optimierungsrichtung

  1. Einführung von Trendindikatoren oder der Identifizierung von Preisverhaltensmustern kann in Erwägung gezogen werden, um Handelssignale zweimal zu bestätigen, um verlustbehaftete Geschäfte durch falsche Durchbrüche zu reduzieren.
  2. Die Optimierung von Stop-Loss-Bedingungen kann erfolgen, z. B. durch die Einrichtung von dynamischen Stop-Loss-Bedingungen basierend auf Indikatoren wie ATR oder die Einführung von Methoden wie Tracking Stop-Loss, um das Risiko weiter zu kontrollieren.
  3. Die Optimierung der Strategieparameter kann durch genetische Algorithmen, Gittersuche usw. durchgeführt werden, um die optimale Kombination von Parametern zu finden.

Zusammenfassen

Die BB-Gleichgewichtsbrechstrategie ist eine Handelsstrategie, die auf den Bollinger-Bändern basiert, und handelt, indem sie die Gelegenheit erfasst, die Bollinger-Band zu überschreiten. Die Strategie hat den Vorteil, dass die Signale klar und einfach sind, und es gibt einige Risikokontrollen. Die Strategie hat jedoch auch einige Einschränkungen, wie z. B. eine möglicherweise zu hohe Handelsfrequenz, Signalverzögerungen usw.

Strategiequellcode
/*backtest
start: 2023-06-08 00:00:00
end: 2024-06-13 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=5
strategy("BB Strategy", overlay=true)

// Input parameters
length = input.int(20, minval=1, title="Length")
maType = input.string("SMA", "Basis MA Type", options=["SMA", "EMA", "SMMA (RMA)", "WMA", "VWMA"])
src = input(close, title="Source")
mult = input.float(2.0, minval=0.001, maxval=50, title="StdDev")
offset = input.int(0, "Offset", minval=-500, maxval=500, title="Offset")

// Moving average function
ma(source, length, _type) =>
    switch _type
        "SMA" => ta.sma(source, length)
        "EMA" => ta.ema(source, length)
        "SMMA (RMA)" => ta.rma(source, length)
        "WMA" => ta.wma(source, length)
        "VWMA" => ta.vwma(source, length)

// Calculate Bollinger Bands
basis = ma(src, length, maType)
dev = mult * ta.stdev(src, length)
upper = basis + dev
lower = basis - dev

// Plot Bollinger Bands
plot(basis, "Basis", color=color.blue, offset=offset)
p1 = plot(upper, "Upper", color=color.red, offset=offset)
p2 = plot(lower, "Lower", color=color.green, offset=offset)
fill(p1, p2, title="Background", color=color.rgb(33, 150, 243, 95))

// Strategy logic
longCondition = ta.crossover(close, upper)
shortCondition = ta.crossunder(close, lower)

// Strategy entries and exits
if (longCondition)
    strategy.entry("Long", strategy.long)
if (shortCondition)
    strategy.entry("Short", strategy.short)
if (shortCondition and strategy.position_size > 0)
    strategy.close("Long")
if (longCondition and strategy.position_size < 0)
    strategy.close("Short")