Sumber daya yang dimuat... Pemuatan...

Triple Bollinger Bands Mencapai Tren Mengikuti Strategi Perdagangan Kuantitatif

Penulis:ChaoZhang, Tanggal: 2024-12-11 11:01:52
Tag:BBSMASDSilang

img

Gambaran umum

Strategi ini adalah versi yang lebih baik dari sistem trend-mengikuti Bollinger Bands tradisional. Ini memantau aksi harga selama tiga sentuhan berturut-turut dari Bollinger Bands untuk mengkonfirmasi keandalan tren, menghasilkan tingkat kemenangan yang lebih tinggi. Strategi ini menggunakan rata-rata bergerak 20 periode sebagai band tengah dan 2 penyimpangan standar untuk band atas dan bawah. Melalui analisis rinci hubungan harga dengan batas band, ia mencapai sistem perdagangan dengan keuntungan yang unik.

Prinsip Strategi

Mekanisme ini digunakan untuk mengidentifikasi pergerakan harga yang terus menerus. Sistem ini menghasilkan sinyal panjang ketika harga pecah di bawah band bawah tiga kali berturut-turut, dan sinyal pendek ketika harga pecah di atas band atas tiga kali berturut-turut. Mekanisme ini secara efektif menyaring keluar breakout palsu, meningkatkan keandalan perdagangan. Strategi ini menggunakan band tengah (20-periode moving average) sebagai sinyal keluar, menyelesaikan perdagangan ketika harga kembali ke band tengah.

Keuntungan Strategi

  1. Keandalan Tinggi: Membutuhkan tiga sentuhan berturut-turut batas pita untuk mengkonfirmasi sinyal perdagangan secara signifikan mengurangi dampak dari false breakout.
  2. Pengendalian risiko: Menggunakan rata-rata bergerak sebagai titik keluar memungkinkan stop-loss tepat waktu ketika tren berbalik.
  3. Adaptifitas yang kuat: Parameter strategi dapat disesuaikan dengan kondisi pasar yang berbeda, menawarkan universalitas yang baik.
  4. Frekuensi perdagangan moderat: Kondisi masuk yang ketat mencegah overtrading.
  5. Manajemen uang yang rasional: Ukuran posisi berdasarkan persentase ekuitas akun memastikan risiko terkontrol.

Risiko Strategi

  1. Risiko pasar yang berkisar: Dapat menghasilkan sinyal palsu yang sering terjadi di pasar sampingan.
  2. Risiko slippage: Potensi kerugian slippage yang signifikan selama kondisi pasar yang tidak stabil.
  3. Sensitivitas Parameter: Kinerja strategi sangat tergantung pada pengaturan parameter Bollinger Bands.
  4. Risiko Pembalikan Tren: Dapat menimbulkan kerugian besar selama pembalikan tren tiba-tiba.

Arah Optimasi Strategi

  1. Masukkan Indikator Volume: Menggabungkan analisis volume dapat meningkatkan keandalan sinyal.
  2. Penyesuaian Parameter Dinamis: Sesuaikan parameter Bollinger Bands berdasarkan volatilitas pasar.
  3. Tambahkan Indikator Konfirmasi Tren: Sertakan indikator teknis tambahan untuk mengkonfirmasi arah tren.
  4. Mengoptimalkan Mekanisme Stop Loss: Merancang pendekatan stop loss yang lebih fleksibel untuk lingkungan pasar yang berbeda.
  5. Meningkatkan Manajemen Posisi: Sesuaikan ukuran posisi secara dinamis berdasarkan kekuatan sinyal.

Ringkasan

Strategi ini meningkatkan sistem perdagangan Bollinger Bands tradisional dengan menerapkan pendekatan tren yang sangat andal. Mekanisme konfirmasi tiga sentuhan yang unik secara efektif meningkatkan tingkat kemenangan, sementara mekanisme keluar berbasis rata-rata bergerak memberikan solusi pengambilan keuntungan yang rasional. Meskipun risiko yang melekat ada, arah optimasi yang disarankan dapat lebih meningkatkan stabilitas dan profitabilitas strategi.


/*backtest
start: 2024-11-10 00:00:00
end: 2024-12-09 08:00:00
period: 1h
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=6
strategy("Bollinger Bands Strategy - 3 Crossings", overlay=true)

// Input Parameters
length = input.int(20, title="Bollinger Bands Length", minval=1)
src = input(close, title="Source")
mult = input.float(2.0, title="Multiplier", step=0.1)

// Calculate Bollinger Bands
basis = ta.sma(src, length)
dev = mult * ta.stdev(src, length)
upper = basis + dev
lower = basis - dev

// Plot Bollinger Bands
plotBasis = plot(basis, color=color.blue, title="Basis")
plotUpper = plot(upper, color=color.red, title="Upper Band")
plotLower = plot(lower, color=color.green, title="Lower Band")
fill(plot1=plotUpper, plot2=plotLower, color=color.new(color.blue, 90), title="Band Fill")

// Counter Variables
var int longCrossCount = 0
var int shortCrossCount = 0

// Detect Crossings
longCondition = close < lower  // Price closes below the lower band
shortCondition = close > upper  // Price closes above the upper band

if longCondition
    longCrossCount += 1  // Increment the counter for long
    shortCrossCount := 0  // Reset the short counter

if shortCondition
    shortCrossCount += 1  // Increment the counter for short
    longCrossCount := 0  // Reset the long counter

if not longCondition and not shortCondition
    longCrossCount := 0  // Reset if no crossing
    shortCrossCount := 0

// Entry and Exit Rules
if longCrossCount >= 3 and strategy.position_size <= 0
    strategy.entry("Long", strategy.long)
    longCrossCount := 0  // Reset the counter after entering

if shortCrossCount >= 3 and strategy.position_size >= 0
    strategy.entry("Short", strategy.short)
    shortCrossCount := 0  // Reset the counter after entering

// Exit Condition (When Price Returns to the Middle Band)
exitCondition = ta.crossover(src, basis) or ta.crossunder(src, basis)

if exitCondition and strategy.position_size > 0
    strategy.close("Long")
if exitCondition and strategy.position_size < 0
    strategy.close("Short")


Berkaitan

Lebih banyak