
Die Reverse Volatility Breakout Strategie ist eine Reversal-Trading-Strategie, die mehrere technische Indikatoren wie ATR, Bollinger Bands, RSI und MACD verwendet, um die Extreme des Marktes zu identifizieren und bei einem Rückschlag in den Markt zu handeln. Anders als die herkömmliche Breakout-Strategie, die beim Auftreten von Positivsignalen verkauft und bei einem Rückschlag kaufen wird, um die Möglichkeit eines Rückschlags zu erfassen.
Die Strategie verwendet folgende Kennzahlen, um Handelssignale zu beurteilen:
Die Kernlogik der Strategie lautet:
Die Reverse Volatility Breakout Strategie ist ein interessanter Versuch, die Extreme des Marktes mit Hilfe von mehreren technischen Indikatoren zu erfassen und bei Marktreversionssignalen rückwärts zu handeln. Die Strategie ist jedoch mit Risiken verbunden und muss mit Vorsicht angewendet werden. Durch die Optimierung der Indikatorparameter, die Einführung von Risikokontrollmaßnahmen und in Kombination mit anderen Analysemethoden kann die Robustheit und Profitabilität der Strategie weiter verbessert werden.
/*backtest
start: 2024-04-01 00:00:00
end: 2024-04-30 23:59:59
period: 2h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=5
strategy("Volatility Breakout Strategy (Reversed)", overlay=true)
// Indicator Inputs
atrLength = input(14, "ATR Length")
bbLength = input(20, "Bollinger Bands Length")
bbMultiplier = input(2, "Bollinger Bands Multiplier")
rsiLength = input(14, "RSI Length")
macdShortLength = input(12, "MACD Short Length")
macdLongLength = input(26, "MACD Long Length")
macdSignalSmoothing = input(9, "MACD Signal Smoothing")
// Calculate Indicators
atrValue = ta.atr(atrLength)
basis = ta.sma(close, bbLength)
deviation = bbMultiplier * ta.stdev(close, bbLength)
upperBand = basis + deviation
lowerBand = basis - deviation
rsiValue = ta.rsi(close, rsiLength)
[macdLine, signalLine, _] = ta.macd(close, macdShortLength, macdLongLength, macdSignalSmoothing)
// Strategy Conditions (Reversed)
longCondition = ta.crossover(close[1], upperBand[1]) and rsiValue > 50 and macdLine > signalLine
shortCondition = ta.crossunder(close[1], lowerBand[1]) and rsiValue < 50 and macdLine < signalLine
// Strategy Entry (Reversed)
if (longCondition)
strategy.entry("Sell", strategy.short) // Reversed: Buy signal triggers a sell
if (shortCondition)
strategy.entry("Buy", strategy.long) // Reversed: Sell signal triggers a buy
// Plotting
plot(basis, color=color.blue, title="Basis")
plot(upperBand, color=color.red, title="Upper Band")
plot(lowerBand, color=color.green, title="Lower Band")