Strategi Breakout Bollinger Bands

Penulis:ChaoZhang, Tanggal: 2024-02-20
Tag:

img

Gambaran umum

Strategi Breakout Bollinger Bands adalah strategi perdagangan kuantitatif sederhana yang didasarkan pada indikator Bollinger Bands. Strategi ini memanfaatkan tingkat dukungan dan resistensi dinamis yang disediakan oleh band atas dan bawah Bollinger Bands untuk menetapkan aturan masuk untuk posisi panjang ketika harga keluar dari band dan aturan keluar ketika harga keluar kembali dari band, bertujuan untuk menangkap peluang mengikuti tren dalam pergerakan harga.

Logika Strategi

Indikator Bollinger Bands dikembangkan oleh John Bollinger pada tahun 1980-an. Indikator ini terdiri dari rata-rata bergerak periode n dan m kali deviasi standar di atas dan di bawahnya.

Syarat masuk untuk strategi ini adalah: posisi panjang akan diambil ketika harga penutupan melanggar band Bollinger bagian bawah; posisi pendek akan diambil ketika harga penutupan melanggar band Bollinger bagian atas. Aturan keluar adalah: untuk posisi panjang yang ada, likuidasi ketika harga penutupan melanggar kembali di atas band atas; untuk posisi pendek yang ada, tutup ketika harga penutupan melanggar kembali di bawah band bawah.

Ini adalah strategi trend-mengikuti. Dengan menangkap trend kelanjutan disinyalisasikan oleh pemecahan Bollinger Bands, itu bertujuan untuk mendapatkan keuntungan dari pergerakan harga arah yang berkelanjutan.

Keuntungan

  1. Menggunakan Bollinger Bands sebagai level support/resistance dinamis daripada harga tetap membuat strategi dapat beradaptasi dengan kondisi pasar yang berkembang.

  2. Keputusan didasarkan pada tingkat harga dan kondisi volatilitas, menghindari beberapa sinyal palsu.

  3. Kerangka kerja breakout sederhana dan intuitif.

  4. Penyesuaian parameter yang fleksibel membuat strategi dapat disesuaikan di berbagai produk dan pasar.

Risiko

  1. Penyesuaian parameter indikator yang buruk dapat menyebabkan perdagangan yang terlalu sering dan biaya yang tidak perlu.

  2. Sinyal breakout mungkin hanya fluktuasi harga jangka pendek bukan tren yang berkelanjutan.

  3. Kurangnya stop loss mengekspos strategi terhadap risiko kerugian yang tidak terkendali.

  4. Sistem teknis murni melewatkan pembalikan tren mendasar.

  5. Kinerja dapat bervariasi di berbagai produk tanpa penyesuaian.

Peluang Peningkatan

  1. Mengoptimalkan parameter untuk meningkatkan ketahanan.

  2. Sertakan perintah stop loss untuk membatasi kerugian.

  3. Membangun sistem multi-frame waktu untuk meningkatkan keputusan.

  4. Tambahkan filter volume untuk menghindari sinyal palsu.

  5. Menambah dasar untuk entri waktu yang lebih baik dan posisi ukuran.

  6. Evaluasi strategi pada lebih banyak produk untuk menguji kemampuan beradaptasi.

Ringkasan

Bollinger Bands Breakout Strategy menyediakan pendekatan trend-mengikuti sederhana dengan naik momentum disinyalisasikan oleh indikator berbasis breakout. Kekuatannya terletak pada identifikasi dinamis trend kelanjutan. Pengendalian risiko yang tepat dan peningkatan robusitas dapat mengubahnya menjadi strategi sistematis yang layak.


/*backtest
start: 2024-01-20 00:00:00
end: 2024-02-19 00:00:00
period: 1h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=5
strategy("Bollinger Bands Strategy", overlay=true)

length = input.int(20, title="Bollinger Bands Length", minval=1)
maType = input.string("SMA", title="Basis MA Type", options=["SMA", "EMA", "SMMA (RMA)", "WMA", "VWMA"])
src = input(close, title="Source")
mult = input.float(2.0, title="StdDev Multiplier", minval=0.001, maxval=50)
offset = input.int(0, title="Offset", minval=-500, maxval=500)

ma(source, length, _type) =>
    switch _type
        "SMA" => ta.sma(source, length)
        "EMA" => ta.ema(source, length)
        "SMMA (RMA)" => ta.rma(source, length)
        "WMA" => ta.wma(source, length)
        "VWMA" => ta.vwma(source, length)

basis = ma(src, length, maType)
dev = mult * ta.stdev(src, length)
upper = basis + dev + offset
lower = basis - dev - offset

// Define strategy entry and exit conditions
strategy.entry("Buy", strategy.long, when=close < lower)
strategy.close("Buy", when=close > upper)

strategy.entry("Sell", strategy.short, when=close > upper)
strategy.close("Sell", when=close < lower)

// Plotting the Bollinger Bands
plot(basis, color=color.blue, title="Basis")
plot(upper, color=color.red, title="Upper Band")
plot(lower, color=color.green, title="Lower Band")


Lebih banyak