
Ringkasan
Ini adalah strategi perdagangan berdasarkan indikator Bollinger Bands untuk mengidentifikasi tren pasar dan menghasilkan sinyal perdagangan melalui hubungan silang antara harga dan Bollinger Bands. Strategi ini menggunakan rata-rata bergerak 55 periode sebagai lintasan tengah Bollinger Bands dan diperhitungkan dengan 1.0 kali selisih standar sebagai lintasan atas dan bawah Bollinger Bands.
Prinsip Strategi
Strategi ini terdiri dari beberapa bagian utama:
- Perhitungan Brin-band: Menggunakan 55 siklus SMA sebagai rata-rata rata-rata rata-rata rata-rata rata-rata rata-rata rata-rata rata-rata rata-rata rata-rata rata-rata rata-rata rata-rata rata-rata rata-rata rata-rata rata-rata rata-rata rata-rata rata-rata rata-rata rata-rata rata-rata rata-rata rata-rata rata-rata rata-rata rata-rata rata-rata rata-rata rata-rata rata-rata rata-rata rata-rata rata-rata rata-rata rata-rata rata-rata rata-rata rata-rata rata-rata rata-rata rata-rata rata-rata rata-rata rata-rata rata-rata rata-rata rata-rata rata rata rata rata rata rata rata rata rata rata rata rata rata rata rata rata rata rata rata rata rata rata rata rata rata rata rata rata rata rata rata rata rata rata rata rata rata rata rata rata rata rata rata rata rata rata rata rata rata rata rata rata rata rata rata rata rata rata rata rata rata rata rata rata rata rata rata rata rata rata rata rata rata rata rata rata rata rata rata rata rata rata rata rata rata rata rata rata rata rata rata rata rata
- Logika pembuatan sinyal:
- Ketika harga penutupan menembus lintasan, sinyal multipel dihasilkan
- Sinyal shorting dihasilkan saat harga close out menembus downtrend
- Mekanisme konfirmasi sinyal: Menggunakan fungsi barssince untuk menghitung jumlah siklus jarak dari terobosan terakhir, untuk menentukan arah perdagangan akhir dengan membandingkan jarak siklus sinyal kosong.
- Bagian visualisasi: Menampilkan sinyal perdagangan melalui tanda segitiga pada grafik, menggunakan warna yang berbeda untuk membedakan ruang kosong.
Keunggulan Strategis
- Sinyal yang jelas: menghasilkan sinyal perdagangan melalui hubungan silang yang jelas antara harga dan Brin, menghindari zona kabur.
- Trend Following: Strategi ini pada dasarnya mengikuti tren, sehingga menghasilkan keuntungan yang lebih baik dalam situasi yang kuat.
- Intuisi visual: Identifikasi sinyal perdagangan sangat intuitif melalui warna yang diisi dan penandaan bentuk.
- Fleksibilitas Parameter: Periode dan standar deviasi biner dapat disesuaikan dengan kondisi pasar yang berbeda.
- Kompleksitas sistem: mencakup fungsi lengkap untuk menghasilkan sinyal, visualisasi, dan alarm.
Risiko Strategis
- Risiko pasar bergoyang: Sering terjadi sinyal palsu dalam pasar bergoyang horizontal.
- Risiko keterlambatan: sinyal mungkin terlambat karena menggunakan rata-rata bergerak dengan periode yang lebih panjang (<=55)
- Risiko Reversal: Resiko yang lebih besar jika tren tiba-tiba berbalik.
- Sensitivitas parameter: Pilihan parameter Brin band memiliki dampak yang lebih besar terhadap kinerja strategi.
Arah optimasi strategi
- Pengenalan konfirmasi volume transaksi: Indikator volume transaksi dapat ditambahkan sebagai kondisi tambahan untuk konfirmasi sinyal.
- Optimisasi parameter dinamis: Perkalian standar perbedaan Brinband yang dapat disesuaikan secara dinamis dengan fluktuasi pasar.
- Tambahkan filter tren: Anda dapat menambahkan indikator tren dengan periode yang lebih lama untuk memfilter sinyal palsu.
- Meningkatkan mekanisme stop loss: Menambahkan stop loss bergerak atau stop loss tetap untuk mengendalikan risiko.
- Klasifikasi kondisi pasar: Anda dapat menambahkan modul pengenalan kondisi pasar, menggunakan pengaturan parameter yang berbeda dalam kondisi pasar yang berbeda.
Meringkaskan
Ini adalah strategi pelacakan tren klasik berbasis Brin Belt yang menangkap tren pasar melalui hubungan silang antara harga dan Brin Belt. Strategi ini dirancang secara ringkas dan jelas, dengan efek visualisasi dan mekanisme pembuatan sinyal yang baik. Meskipun mungkin menghadapi tantangan di pasar yang bergoyang, stabilitas dan keandalan strategi dapat ditingkatkan lebih lanjut dengan pengoptimalan parameter yang tepat dan penambahan indikator tambahan.
Kode Sumber Strategi
/*backtest
start: 2024-02-19 00:00:00
end: 2025-02-16 08:00:00
period: 2h
basePeriod: 2h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=5
strategy("Bollinger Bands Filter [Strategy]", overlay=true)
// -- INPUTS (kratke tooltipy, ziadne prelomenie riadku)
src = input.source(close, title="Source", tooltip="Source for BB calc")
length = input.int(55, minval=1, title="SMA length", tooltip="Period for BB basis")
mult = input.float(1.0, minval=0.1, maxval=5, title="Std Dev", tooltip="Std Dev multiplier")
CC = input.bool(true, "Color Bars", tooltip="If true, color bars by BB logic")
// -- Bollinger calc
basis = ta.sma(src, length)
dev = mult * ta.stdev(src, length)
upper = basis + dev
lower = basis - dev
// -- Long/Short logic
longCondition = close > upper
shortCondition = close < lower
L1 = ta.barssince(longCondition)
S1 = ta.barssince(shortCondition)
longSignal = L1 < S1 and not (L1 < S1)[1]
shortSignal = S1 < L1 and not (S1 < L1)[1]
// -- Plot signals
plotshape(shortSignal ? close : na, color=color.red, style=shape.triangledown, size=size.small, location=location.abovebar, title="Short Signal")
plotshape(longSignal ? close : na, color=color.green, style=shape.triangleup, size=size.small, location=location.belowbar, title="Long Signal")
// -- Plot BB lines
plot(upper, color=color.new(color.red, 40), title="Upper BB")
plot(lower, color=color.new(color.green,40), title="Lower BB")
plot(basis, color=color.new(color.blue, 10), title="Basis")
// -- Fill
fill(plot(na), plot(na)) // 'dummy' fill reset
fill(plot(upper, display=display.none), plot(basis, display=display.none), color=color.new(color.teal, 80))
fill(plot(lower, display=display.none), plot(basis, display=display.none), color=color.new(color.orange, 80))
// -- barcolor
bcol = close > upper ? color.lime : close < lower ? color.red : na
barcolor(CC ? bcol : na)
// -- Alerts
alertcondition(longSignal, title="Long - BB", message="BB Filter Long")
alertcondition(shortSignal, title="Short - BB", message="BB Filter Short")
// -- Strategy entries
if longSignal
strategy.entry("Long", strategy.long)
if shortSignal
strategy.entry("Short", strategy.short)