
Diese Strategie kombiniert Bollinger Bands und RSI-Indikatoren, um potenzielle Marktwendepunkte durch eine doppelte Bestätigungsmethode zu identifizieren. Wenn der Preis die Bollinger Bands unterbricht und der RSI die Überverkaufskonditionen bestätigt, wird eine Mehrpositionsposition eingegangen. Wenn der Preis die Bollinger Bands überbricht und der RSI die Überkaufskonditionen bestätigt, wird eine Off-Position eingegangen.
Die Strategie basiert auf dem Mean Return-Prinzip und der Dynamik-Bestätigungsmechanik. Die Brin-Band hilft bei der Identifizierung von Preis-Höchstwerten in Bezug auf die jüngste Volatilität, während der RSI bestätigt, ob der Markt tatsächlich überkauft oder überverkauft ist. Die Kernprinzipien sind:
In der Code-Implementierung verwendet die Strategie die 30-Tage-Periode, um den SMA zu berechnen. Die Brin-Band-Achse, die Standarddifferenz ist 2,0 und die 14-Tage-Periode RSI wird als Dynamik bestätigt.
Die Brin-Band-RSI-Doppelbestätigung der Mittelwert-Rückkehrstrategie mit Verfolgung von Stop-Loss-Schutz stellt eine durchdachte Marktumkehr-Trading-Methode dar. Die Strategie zielt darauf ab, hohe Wahrscheinlichkeits-Umkehrpunkte zu erfassen, während falsche Signale gefiltert werden, indem sie die Volatilitätssignale des Brin-Bands mit der Dynamik-Bestätigung des RSI kombiniert. Die integrierte Risikomanagement-Mechanismen bieten eine wichtige Schutzschicht durch die Festlegung und Verfolgung von Stop-Losses.
/*backtest
start: 2024-08-11 00:00:00
end: 2025-08-09 08:00:00
period: 1d
basePeriod: 1d
exchanges: [{"eid":"Futures_Binance","currency":"ETH_USDT"}]
*/
//@version=5
strategy("BB & RSI Trailing Stop Strategy", overlay=true, initial_capital=10000)
// --- Inputs for Bollinger Bands, RSI, and Trade Management ---
bb_length = input.int(30, title="BB Length", minval=1)
bb_mult = input.float(2.0, title="BB StdDev", minval=0.001, maxval=50)
rsi_length = input.int(14, title="RSI Length", minval=1)
rsi_overbought = input.int(70, title="RSI Overbought Level", minval=1)
rsi_oversold = input.int(30, title="RSI Oversold Level", minval=1)
// We only need an input for the fixed stop loss now.
fixed_stop_points = input.int(40, title="Fixed Stop Loss Points", minval=1)
// --- Define Trailing Stop Value ---
// The trailing stop is hardcoded to 40 points as requested.
trailing_stop_points = 40
// --- Calculate Indicators ---
// Bollinger Bands
basis = ta.sma(close, bb_length)
dev = bb_mult * ta.stdev(close, bb_length)
upper = basis + dev
lower = basis - dev
// RSI
rsi_value = ta.rsi(close, rsi_length)
// --- Plot the Indicators on the chart ---
plot(basis, "Basis", color=color.new(color.gray, 0))
plot(upper, "Upper", color=color.new(color.red, 0))
plot(lower, "Lower", color=color.new(color.green, 0))
// --- Define Entry Conditions ---
// Short entry when price crosses upper band AND RSI is overbought
short_condition = ta.crossover(close, upper) and (rsi_value > rsi_overbought)
// Long entry when price crosses under lower band AND RSI is oversold
long_condition = ta.crossunder(close, lower) and (rsi_value < rsi_oversold)
// --- Execute Trades and Manage Exits ---
if (strategy.position_size == 0)
// Logic for SHORT trades
if (short_condition)
strategy.entry("BB/RSI Short", strategy.short)
// Logic for LONG trades
if (long_condition)
strategy.entry("BB/RSI Long", strategy.long)
// Apply the fixed stop loss and trailing stop to any open position
strategy.exit(id="Exit Order",
loss=fixed_stop_points,
trail_points=trailing_stop_points,
trail_offset=0)