Bollinger Bands Standard Deviation Breakout Strategy

SMA
Tarikh penciptaan: 2024-04-30 16:51:34 Akhirnya diubah suai: 2024-04-30 16:51:34
Salin: 3 Bilangan klik: 571
1
fokus pada
1617
Pengikut

Bollinger Bands Standard Deviation Breakout Strategy

Gambaran keseluruhan

Strategi ini berdasarkan pada indikator Brin Belt, membuka kedudukan teratas apabila harga penutup menembusi lintasan, membuka kedudukan teratas apabila harga penutup jatuh ke bawah lintasan. Syarat kedudukan teratas adalah harga jatuh ke tengah lintasan, dan syarat kedudukan teratas adalah harga menembusi tengah lintasan. Strategi ini menggunakan arah trend dan masa pembukaan kedudukan untuk menentukan arah dan masa harga berbanding dengan kedudukan Brin Belt di bawah lintasan.

Prinsip Strategi

  1. Hitung garis tengah dan bawah pada tali pinggang Brin. Garis tengah adalah purata bergerak sederhana harga penutupan, dan garis atas dan bawah adalah perbezaan piawaian ganda tertentu.
  2. Apabila harga penutupan mencecah paras yang lebih tinggi, anda boleh membuka posisi teratas.
  3. Apabila harga penutupan jatuh ke bawah, buka kedudukan awal kosong.
  4. Apabila memegang kedudukan berganda, jika harga penutupan jatuh ke tengah-tengah, kedudukan berganda akan ditutup.
  5. Apabila memegang kedudukan kosong, jika harga penutupan menembusi orbit tengah, kedudukan kosong akan dipadamkan.

Kelebihan Strategik

  1. Burin band dapat mencerminkan dengan berkesan keluasan turun naik harga dan arah trend, memanfaatkan kedudukan harga berbanding dengan Burin band untuk membuka posisi terbuka, dan dapat menangkap keadaan trend.
  2. Jarak ke atas dan ke bawah dari rel tengah mestilah selisih standard, yang dapat menyesuaikan diri dengan perubahan kadar turun naik harga, semakin besar selisih standard, semakin jauh jarak ke atas dan ke bawah dari rel tengah.
  3. Syarat simpanan menggunakan rel tengah, dan bukannya menerobos ke bawah rel, boleh menghalang halangan seketika mungkin.
  4. Parameter boleh diselaraskan, boleh mengoptimumkan kitaran Brin, perkalian standard deviasi dan lain-lain untuk menyesuaikan diri dengan pelbagai jenis dan kitaran.

Risiko Strategik

  1. Dalam pasaran yang bergolak, harga berfluktuasi berulang kali di sekitar tren naik dan turun, yang mungkin menyebabkan kenaikan kos dagangan.
  2. Apabila harga mempercepatkan pergerakan trend, titik pembukaan kedudukan agak terlewat, dan keupayaan untuk mengikuti angin lemah.
  3. Pada permulaan perubahan trend, penarikan balik menyentuh kedudukan rata di tengah, dan apabila trend terus berkembang, ia akan terlepas.

Arah pengoptimuman strategi

  1. Ia boleh digabungkan dengan penunjuk stop loss seperti ATR untuk mengawal penarikan balik.
  2. Anda boleh menggunakan kadar dinamik kedudukan kosong yang banyak untuk menyesuaikan kedudukan anda secara fleksibel mengikut kekuatan trend.
  3. Keadaan pembukaan boleh digabungkan dengan lebih banyak syarat penapisan, seperti indikator kuantiti harga, untuk meningkatkan kebolehpercayaan isyarat pembukaan.

ringkaskan

Strategi ini adalah strategi mengikut trend klasik, yang menangkap trend melalui Brin. Logik strategi jelas, kelebihan jelas, tetapi ada risiko tertentu. Dengan mengoptimumkan hentian kerugian, pengurusan kedudukan dan penapisan kedudukan, anda dapat meningkatkan prestasi strategi, meningkatkan daya serap.

Kod 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))