Strategi Breakout Deviasi Standar Bollinger Bands

SMA
Tanggal Pembuatan: 2024-04-30 16:51:34 Akhirnya memodifikasi: 2024-04-30 16:51:34
menyalin: 3 Jumlah klik: 571
1
fokus pada
1617
Pengikut

Strategi Breakout Deviasi Standar Bollinger Bands

Ringkasan

Strategi ini didasarkan pada indikator Bollinger Bands, yang membuka posisi overhead ketika harga penutupan menembus tren naik, dan membuka posisi overhead ketika harga penutupan jatuh ke tren rendah. Kondisi overhead adalah harga jatuh ke tren tengah, dan kondisi overhead adalah harga menembus tren tengah. Strategi ini menggunakan harga relatif terhadap posisi Bollinger Bands untuk menentukan arah tren dan waktu untuk membuka posisi.

Prinsip Strategi

  1. Perhitungan Brin Belt atas dan bawah. Tengah adalah rata-rata bergerak sederhana dari harga penutupan, atas dan bawah adalah standar perbedaan dari beberapa kali lipat.
  2. Ketika harga penutupan mencapai titik terendah, bukalah posisi overhead.
  3. Ketika harga penutupan turun, buka posisi awal kosong.
  4. Ketika memegang posisi multipel, jika harga penutupan jatuh ke tengah lintasan, posisi multipel akan dipadamkan.
  5. Ketika memegang posisi kosong, jika harga penutupan menembus mid-trajectory, maka posisi kosong akan dihapus.

Keunggulan Strategis

  1. Bollinger Bands dapat secara efektif mencerminkan kisaran fluktuasi harga dan arah tren, memanfaatkan posisi harga relatif terhadap Bollinger Bands untuk membuka posisi terbuka, dan dapat menangkap tren.
  2. Jarak lintasan atas dan bawah dari lintasan tengah memiliki selisih standar tertentu, yang dapat beradaptasi dengan perubahan fluktuasi harga. Semakin besar selisih standar, semakin jauh lintasan atas dan bawah dari lintasan tengah.
  3. Dengan menggunakan rel tengah, dan bukan mundur menembus rel ke atas dan ke bawah, Anda dapat menghentikan penghentian secepat mungkin.
  4. Parameter dapat disesuaikan, dapat dioptimalkan untuk siklus Brin dan perkalian standar untuk menyesuaikan dengan varietas dan siklus yang berbeda.

Risiko Strategis

  1. Dalam pasar yang bergejolak, harga berfluktuasi berulang di sekitar tren naik turun, dan mungkin sering terjadi penutupan posisi, yang menyebabkan peningkatan biaya transaksi.
  2. Ketika harga mempercepat pergerakan tren, titik buka posisi relatif terlambat dan kemampuan mengikuti angin lemah.
  3. Pada awal pergeseran tren, penarikan kembali menyentuh posisi rata rata di tengah, dan ketika tren terus berkembang, akan kehilangan tren berikutnya.

Arah optimasi strategi

  1. Dapat dikombinasikan dengan indikator stop loss seperti ATR, untuk mengontrol penarikan balik.
  2. Anda dapat menggunakan rasio dinamis posisi kosong yang dapat disesuaikan secara fleksibel sesuai dengan kekuatan tren.
  3. Kondisi pembukaan dapat dikombinasikan dengan lebih banyak kondisi penyaringan, seperti indikator kuantitas harga, untuk meningkatkan keandalan sinyal pembukaan.

Meringkaskan

Strategi ini adalah strategi jenis pelacakan tren klasik, yang menangkap tren melalui Brin. Logika strategi jelas, keunggulan jelas, tetapi juga ada risiko tertentu. Dengan mengoptimalkan stop loss, manajemen posisi, dan penyaringan posisi, kinerja strategi dapat ditingkatkan, meningkatkan fleksibilitas.

Kode Sumber Strategi
/*backtest
start: 2024-03-01 00:00:00
end: 2024-03-31 23:59:59
period: 1h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=5
// Bollinger Bands: Madrid : 14/SEP/2014 11:07 : 2.0
// This displays the traditional Bollinger Bands, the difference is 
// that the 1st and 2nd StdDev are outlined with two colors and two
// different levels, one for each Standard Deviation

strategy(shorttitle='MBB', title='Bollinger Bands', overlay=true)
src = input(close)
length = input.int(20, minval=1, title = "Length")
mult = input.float(2.0, minval=0.001, maxval=50, title = "Multiplier")

basis = ta.sma(src, length)
dev = ta.stdev(src, length)
dev2 = mult * dev

upper1 = basis + dev
lower1 = basis - dev
upper2 = basis + dev2
lower2 = basis - dev2

// Strategy
long_condition = ta.crossover(close, upper1)
short_condition = ta.crossunder(close, lower1)

if (long_condition)
    strategy.entry("Long", strategy.long)
if (short_condition)
    strategy.entry("Short", strategy.short)

// Exit conditions
exit_long_condition = ta.crossunder(close, basis)
exit_short_condition = ta.crossover(close, basis)

if (exit_long_condition)
    strategy.close("Long")
if (exit_short_condition)
    strategy.close("Short")


colorBasis = src >= basis ? color.blue : color.orange

pBasis = plot(basis, linewidth=2, color=colorBasis)
pUpper1 = plot(upper1, color=color.new(color.blue, 0), style=plot.style_circles)
pUpper2 = plot(upper2, color=color.new(color.blue, 0))
pLower1 = plot(lower1, color=color.new(color.orange, 0), style=plot.style_circles)
pLower2 = plot(lower2, color=color.new(color.orange, 0))

fill(pBasis, pUpper2, color=color.new(color.blue, 80))
fill(pUpper1, pUpper2, color=color.new(color.blue, 80))
fill(pBasis, pLower2, color=color.new(color.orange, 80))
fill(pLower1, pLower2, color=color.new(color.orange, 80))