Die Volatility Breakout Trading Strategie zielt darauf ab, Preisbreaks zu erfassen, die durch erhöhte Marktvolatilität entstehen. Die Strategie verwendet den Indikator Average True Range (ATR), um die Volatilität eines Vermögenswertes über einen bestimmten Zeitraum zu messen.
Die Strategie berechnet zunächst den ATR über einen ausgewählten Zeitraum. Dann verwendet sie den ATR, um einen oberen und unteren Breakout-Level zu berechnen. Wenn der Schlusskurs über den oberen Niveau bricht, wird ein langes Signal generiert. Wenn der Schlusskurs unter den unteren Niveau bricht, wird ein kurzes Signal generiert. Um die Signale weiter zu bestätigen, muss die aktuelle Bar für ihren Körperteil geschlossen werden.
Wenn der Schlusskurs die oberen oder unteren Ebenen durchbricht, wird die Breakout-Zone mit einer Farbe gefüllt, die die Breakout-Richtung anzeigt.
Wenn ein langes Signal erzeugt wird und es keine aktuelle Position gibt, geht die Strategie lang.
Der Längeneingang bestimmt den Zeitraum, über den die Volatilität gemessen wird. Ein höherer Längeneinfluss bedeutet, sich auf längere Kursbewegungen zu konzentrieren.
Durch die Senkung des Längenwerts können kurzfristige Kursbewegungen und eine möglicherweise erhöhte Handelsfrequenz angestrebt werden. Es gibt keine strikte Korrelation zwischen dem Längeneingang und der durchschnittlichen Handelslänge.
Der ATR-Indikator berechnet die Breakout-Level dynamisch anstelle von festen Parametern.
Die Verwendung von Festbalkenschließungen zur Bestätigung von Signalen filtert falsche Ausbrüche aus.
Die Eingabe der Länge bietet Flexibilität, um die Strategie für spezifische Marktbedingungen zu optimieren.
Ein Breakout-Handel birgt das Risiko, dass er gestoppt wird. Stop-Losses können Verluste bei einzelnen Trades kontrollieren.
Breakout-Signale können falsche Signale erzeugen, die zu einem Überhandel führen.
Die Optimierung von Parametern erfordert ausreichende Handelsdaten. Schlechte Anfangsparameter können zu einer unterdurchschnittlichen Leistung führen.
Bollinger-Bänder können innerhalb der ATR-Periode eingeführt werden, um neue Breakout-Levels zu berechnen.
Trends können nach Ausbrüchen weiter verfolgt werden, anstatt sofort zu stoppen.
Auf den Märkten mit Bandbreite können verschiedene Parameter oder die Vermeidung von Trades insgesamt in Betracht gezogen werden, um Whipsaws zu vermeiden.
Die Volatility Breakout Trading Strategie profitiert von der erhöhten Marktvolatilität, um Trends zu erreichen, wenn die Preise signifikant durchbrechen. Der ATR-Indikator setzt dynamisch Breakout-Levels und solide Balken filtern falsche Breakouts. Der Längeneingabe bietet Flexibilität zur Anpassung der Strategie
/*backtest start: 2023-09-29 00:00:00 end: 2023-10-29 00:00:00 period: 1h basePeriod: 15m exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ // This source code is subject to the terms of the Mozilla Public License 2.0 at https://mozilla.org/MPL/2.0/ //@version=5 strategy("Volatility Breakout Strategy [Angel Algo]", overlay = true) // Inputs length = input(title="Length", defval=20) // Calculate the average true range (ATR) atr = ta.atr(length) // Plot the ATR on the chart plot(atr, color=color.blue, linewidth=2, title="ATR") // Calculate the upper and lower breakouts upper_breakout = high + atr lower_breakout = low - atr // Plot the upper and lower breakouts on the chart ul = plot(upper_breakout[1], color = color.new(color.green, 100), linewidth=2, title="Upper Breakout Level") ll = plot(lower_breakout[1], color = color.new(color.red, 100), linewidth=2, title="Lower Breakout Level") // Create the signals long_entry = ta.crossover(close, upper_breakout[1]) and barstate.isconfirmed short_entry = ta.crossunder(close, lower_breakout[1]) and barstate.isconfirmed active_signal_color =ta.barssince(long_entry) < ta.barssince(short_entry) ? color.new(color.green,85) : color.new(color.red,85) // Plot the signals on the chart plotshape(long_entry and ta.barssince(long_entry[1]) > ta.barssince(short_entry[1]), location=location.belowbar, style=shape.triangleup, color=color.green, size=size.normal, text = "Bullish breakout", textcolor = color.green) plotshape(short_entry and ta.barssince(long_entry[1]) < ta.barssince(short_entry[1]), location=location.abovebar, style=shape.triangledown, color=color.red, size=size.normal,text = "Bearish breakout", textcolor = color.red) // Fill the space between the upper and lower levels with the color that indicates the latest signal direction fill(ul,ll, color=active_signal_color) long_condition = long_entry and strategy.position_size <= 0 and barstate.isconfirmed short_condition = short_entry and strategy.position_size >= 0 and barstate.isconfirmed if long_condition strategy.entry("Volatility Breakout Long", strategy.long) if short_condition strategy.entry("Volatility Breakout Short", strategy.short)