
Bollinger Bands Dynamic Reversal Quantification Strategy adalah sistem perdagangan berdasarkan analisis teknikal yang menggunakan indikator Bollinger Bands untuk mengenal pasti keadaan pasaran yang terlalu banyak dan terlalu banyak dijual, untuk menangkap peluang pembalikan yang berpotensi. Strategi ini menilai masa masuk dengan melihat persilangan harga dengan Bollinger Bands yang naik dan turun, sambil menggunakan stop loss dinamik untuk mengawal risiko.
Prinsip utama strategi ini adalah menggunakan Bollinger Bands untuk mengenal pasti keadaan pasaran yang melampau dan meramalkan kemungkinan pembalikan.
Reka bentuk ini membolehkan strategi untuk berdagang apabila pasaran mengalami pergerakan yang melampau, dan juga untuk mengehadkan potensi kerugian dengan menghentikan kerugian secara dinamik.
Strategi Bollinger Bands Dynamic Reversal Quantification adalah sistem perdagangan yang menggabungkan analisis teknikal dan pengurusan risiko. Strategi ini bertujuan untuk menangkap peluang pembalikan harga yang berpotensi dengan menggunakan Bollinger Bands untuk mengenal pasti keadaan overbought dan oversold di pasaran. Kelebihannya adalah kekuatan objektif, pengurusan risiko yang sempurna dan adaptasi yang baik, tetapi juga menghadapi risiko seperti penipuan palsu dan prestasi pasaran yang kurang baik.
/*backtest
start: 2024-09-18 00:00:00
end: 2024-09-25 00:00:00
period: 45m
basePeriod: 45m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=5
strategy(shorttitle='MBB_Strategy', title='Bollinger Bands Strategy', overlay=true)
// Inputs
price = input.source(close, title="Source")
period = input.int(34, minval=1, title="Period") // Renombramos 'length' a 'period'
multiplier = input.float(2.0, minval=0.001, maxval=50, title="Multiplier") // Renombramos 'mult' a 'multiplier'
// Calculando las bandas de Bollinger
middle_band = ta.sma(price, period) // Renombramos 'basis' a 'middle_band'
deviation = ta.stdev(price, period) // Renombramos 'dev' a 'deviation'
deviation2 = multiplier * deviation // Renombramos 'dev2' a 'deviation2'
upper_band1 = middle_band + deviation // Renombramos 'upper1' a 'upper_band1'
lower_band1 = middle_band - deviation // Renombramos 'lower1' a 'lower_band1'
upper_band2 = middle_band + deviation2 // Renombramos 'upper2' a 'upper_band2'
lower_band2 = middle_band - deviation2 // Renombramos 'lower2' a 'lower_band2'
// Plotting Bollinger Bands
plot(middle_band, linewidth=2, color=color.blue, title="Middle Band")
plot(upper_band2, color=color.new(color.blue, 0), title="Upper Band 2")
plot(lower_band2, color=color.new(color.orange, 0), title="Lower Band 2")
// Rellenando áreas entre las bandas
fill(plot(middle_band), plot(upper_band2), color=color.new(color.blue, 80), title="Upper Fill")
fill(plot(middle_band), plot(lower_band2), color=color.new(color.orange, 80), title="Lower Fill")
// Lógica de la estrategia
var bool is_long = false
var bool is_short = false
if (ta.crossover(price, lower_band2))
strategy.entry("Buy", strategy.long)
is_long := true
is_short := false
if (ta.crossunder(price, upper_band2))
strategy.entry("Sell", strategy.short)
is_long := false
is_short := true
// Lógica del stop loss
stop_loss_level_long = lower_band2
stop_loss_level_short = upper_band2
if (is_long)
strategy.exit("Exit Long", "Buy", stop=stop_loss_level_long)
if (is_short)
strategy.exit("Exit Short", "Sell", stop=stop_loss_level_short)