
Strategi Bollinger Bands Dynamic Reversal Quantification adalah sistem perdagangan berbasis analisis teknis yang menggunakan indikator Bollinger Bands untuk mengidentifikasi kondisi overbought dan oversold di pasar, sehingga menangkap peluang reversal potensial. Strategi ini menilai waktu masuk dengan melihat persilangan harga dengan rel Bollinger Bands atas dan bawah, sambil menggunakan stop loss dinamis untuk mengendalikan risiko.
Prinsip inti dari strategi ini adalah menggunakan Bollinger Bands untuk mengidentifikasi kondisi ekstrem pasar dan memprediksi kemungkinan pembalikan.
Desain ini memungkinkan strategi untuk melakukan perdagangan ketika terjadi pergerakan ekstrem di pasar, sementara membatasi potensi kerugian dengan stop loss dinamis.
Strategi Bollinger Bands Dynamic Reversal Quantification adalah sistem perdagangan yang menggabungkan analisis teknis dan manajemen risiko. Strategi ini bertujuan untuk menangkap peluang reversal harga potensial dengan menggunakan Bollinger Bands untuk mengidentifikasi kondisi overbought dan oversold di pasar. Keunggulan strategi ini adalah kekuatan objektif, manajemen risiko yang sempurna dan adaptasi yang baik, tetapi juga menghadapi risiko seperti false breakout dan kinerja pasar tren yang buruk.
/*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)