Bollinger Band Moving Average Crossover Strategi

Penulis:ChaoZhang, Tarikh: 2024-01-30 16:37:47
Tag:

img

Ringkasan

Ini adalah strategi dagangan berdasarkan persilangan Bollinger Bands dan purata bergerak untuk membuat keputusan membeli dan menjual. Ia terutamanya menggunakan penunjuk Bollinger Bands pada jangka masa 5 minit untuk menentukan julat turun naik harga, digabungkan dengan purata bergerak untuk menentukan arah trend, dan membentuk strategi dagangan mengikut situasi persilangan band atas, band bawah dan band tengah Bollinger Bands. Strategi ini sesuai untuk pasangan mata wang AUD / NZD.

Prinsip Strategi

  1. Gunakan penunjuk Bollinger Bands untuk menentukan had harga atas dan bawah. Band tengah Bollinger Bands adalah purata bergerak mudah 20 tempoh, band atas adalah band tengah ditambah dua penyimpangan standard, dan band bawah adalah band tengah dikurangkan dua penyimpangan standard.

  2. Apabila harga penutupan memecahkan jalur bawah ke atas, ia menunjukkan bahawa harga mula naik, jadi kita membuat entri panjang di sini.

  3. Apabila harga penutupan melebihi band tengah Bollinger Bands, ia bermakna harga telah meningkat di atas band tengah, jadi kita keluar kedudukan di sini untuk menamatkan pusingan perdagangan ini.

  4. Apabila harga penutupan memecahkan jalur atas ke bawah, ia bermakna harga mula turun, jadi kita membuat entri pendek di sini.

  5. Apabila harga penutupan memecahkan band tengah Bollinger Bands, ia bermakna harga telah jatuh di bawah band tengah, jadi kita keluar kedudukan di sini untuk menamatkan pusingan perdagangan ini.

Analisis Kelebihan

  1. Elakkan kehilangan isyarat pembalikan. Strategi ini memanfaatkan sepenuhnya ciri-ciri Bollinger Bands untuk menangkap lompatan harga dari band bawah dan jatuh dari band atas dengan cara yang tepat pada masanya, mengelakkan kerugian yang disebabkan oleh peluang pembalikan yang hilang.

  2. Keuntungan yang kuat. Dengan membuat entri beli dan jual di titik utama dan menetapkan stop loss yang munasabah, ia dapat dengan cepat menukar arah semasa transformasi antara pasaran lembu dan beruang untuk mendapatkan pulangan yang lebih baik.

  3. Frekuensi perdagangan yang sesuai. Bentuk isyarat perdagangan berdasarkan jangka masa 5 minit, yang dapat menangkap trend jangka pendek tanpa berdagang terlalu kerap untuk meningkatkan kos transaksi.

Analisis Risiko

  1. Risiko konvergensi Bollinger Bands yang terlalu cepat. Apabila harga pasaran turun naik secara ganas, band atas dan bawah Bollinger Bands konvergen terlalu cepat, yang boleh dengan mudah membentuk pecah palsu dan memberikan isyarat yang salah. Kita perlu menyesuaikan parameter atau menangguhkan perdagangan pada ketika ini.

  2. Stop loss risiko. Stop loss yang terlalu kecil boleh dengan mudah dipecahkan sementara stop loss yang terlalu besar boleh membawa kepada kerugian besar.

  3. Risiko kos transaksi yang tinggi. Jika kekerapan dagangan terlalu tinggi, kos transaksi juga akan meningkat dengan ketara. Kita perlu menyesuaikan parameter dengan betul untuk mengurangkan kekerapan dagangan.

Pengoptimuman

  1. Mengoptimumkan parameter Bollinger Bands. Kita boleh menguji kombinasi parameter kitaran yang berbeza dan parameter penyimpangan standard untuk mencari set parameter yang paling sesuai dengan julat turun naik produk tertentu ini.

  2. Menambah penunjuk lain untuk menapis isyarat palsu. Penunjuk seperti KDJ dan MACD boleh diperkenalkan untuk mengelakkan masalah yang disebabkan oleh hanya bergantung pada Bollinger Bands.

  3. Mengoptimumkan strategi stop loss. Kita boleh menetapkan stop loss yang lebih tepat dengan mengesan perubahan harga dalam masa nyata. Strategi lain seperti barisan stok juga boleh digunakan.

Kesimpulan

Strategi ini agak stabil secara keseluruhan dengan beberapa keuntungan. Dengan mengoptimumkan parameter dan strategi stop loss, risiko perdagangan dapat dikurangkan lagi untuk mendapatkan pulangan yang baik dalam keadaan pasaran yang tidak menentu. Strategi ini bernilai ujian dan pengoptimuman lanjut dan mempunyai prospek aplikasi praktikal yang sangat baik.


/*backtest
start: 2023-12-30 00:00:00
end: 2024-01-29 00:00:00
period: 1h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=5
// This source code is subject to the terms of the Mozilla Public License 2.0 at https://mozilla.org/MPL/2.0/
// © theTradeAI

strategy('TradeAI - 5min AUDNZD Strategy', overlay=true)

//////////////////////////////
//////// STOP ORDERS DETECTING
//////////////////////////////

length = input(1)

h = ta.highest(high, length)
l = ta.lowest(low, length)

//////////////////////////////
//////// EMAS
//////////////////////////////

emaLenght = input.int(200)

ema200 = ta.ema(close,emaLenght)

//////////////////////////////
//////// BOLLINGER BANDS
//////////////////////////////

length1 = input.int(20, minval=1)
maType = input.string("SMA", "Basis MA Type", options = ["SMA", "EMA", "SMMA (RMA)", "WMA", "VWMA"])
src = input(close, title="Source")
mult = input.float(2.0, minval=0.001, maxval=50, title="StdDev")

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

basis = ma(src, length1, maType)
dev = mult * ta.stdev(src, length1)
upperr = basis + dev
lowerr = basis - dev
offset = input.int(0, "Offset", minval = -500, maxval = 500)


//////////////////////////////
//////// ENTRY & EXIT
//////////////////////////////

// Buy entry
if ta.crossover(lowerr, close)
    strategy.entry('long', strategy.long, stop=h)

// Buy entry CANCEL
if close > lowerr
    strategy.cancel('long')

// Buy exit
if close > basis
    strategy.close('long')

// Sell entry
if ta.crossunder(upperr, close)
    strategy.entry('short', strategy.short, stop=l)

// Sell entry CANCEL
if close < upperr
    strategy.cancel('short')

// Sell exit
if close < basis
    strategy.close('short')



Lebih lanjut