Sumber dimuat naik... memuat...

Penulis:ChaoZhang
Tag:BBSMASDVOL

img

Ringkasan

Prinsip Strategi

  1. Setup Bollinger Bands:

    • Menggunakan tempoh pengiraan 20 hari
    • Band tengah ialah purata bergerak mudah 20 hari (SMA)
    • Isyarat beli: Harga melintasi di atas Band Bollinger bawah
    • Isyarat jual: Harga melintasi bawah Bollinger Band atas
  2. Penapis Volume:

    • Penapis jumlah pilihan boleh diaktifkan
    • Volume mesti melebihi ambang yang ditetapkan (default 100,000) untuk mencetuskan isyarat perdagangan
  3. Pelaksanaan Perdagangan:

    • Masukkan kedudukan panjang pada isyarat beli
    • Tutup kedudukan panjang dan masuk pendek pada isyarat jual
    • Tutup kedudukan pendek pada isyarat beli

Kelebihan Strategi

  1. Prinsip Pembalikan Purata: Memanfaatkan sifat pembalikan purata turun naik harga pasaran kewangan, meningkatkan kebarangkalian keuntungan.

  2. Kebolehsesuaian Dinamik: Bollinger Band secara automatik menyesuaikan kedudukan band atas dan bawah berdasarkan turun naik pasaran, yang membolehkan strategi menyesuaikan diri dengan persekitaran pasaran yang berbeza.

  3. Kawalan Risiko: Penyediaan Bollinger Bands menyediakan tahap stop-loss dan mengambil keuntungan semula jadi untuk perdagangan.

  4. Pengesahan Jumlah: Memperkenalkan penapisan jumlah meningkatkan kebolehpercayaan isyarat perdagangan, mengurangkan risiko daripada pecah palsu.

  5. Perdagangan dua arah: Strategi ini menyokong kedua-dua kedudukan panjang dan pendek, memanfaatkan sepenuhnya peluang pasaran dalam kedua-dua arah.

  6. Visualisasi: Merangka Bollinger Band dan isyarat perdagangan pada carta memudahkan pemahaman dan analisis prestasi strategi secara intuitif.

Risiko Strategi

  1. Risiko pasaran yang berbelit-belit: Dalam pasaran sisi, turun naik, sentuhan kerap batas atas dan bawah Bollinger Bands boleh membawa kepada kerugian berturut-turut.

  2. Kekurangan Pasar Trend: Dalam pasaran yang mempunyai trend yang kuat, strategi mungkin terlepas pergerakan harga yang signifikan atau kerap menutup kedudukan, mengehadkan keuntungan.

  3. Risiko Pelanggaran Palsu: Walaupun penapisan jumlah, pelepasan palsu yang membawa kepada perdagangan yang salah masih boleh berlaku.

  4. Sensitiviti Parameter: Prestasi strategi sangat bergantung kepada tetapan untuk tempoh Bollinger Bands, pengganda, dan ambang jumlah. tetapan yang tidak betul boleh menyebabkan overtrading atau peluang yang hilang.

  5. Kos Pergeseran dan Perdagangan: Perdagangan yang kerap boleh menimbulkan kos urus niaga yang tinggi, yang memberi kesan kepada pulangan keseluruhan.

Arahan Pengoptimuman Strategi

  1. Pengoptimuman Parameter Dinamik: Sesuaikan secara automatik parameter Bollinger Bands dan ambang jumlah berdasarkan turun naik pasaran untuk meningkatkan kesesuaian strategi.

  2. Pengoptimuman Stop-Loss: Melaksanakan stop trailing atau stop-loss dinamik berasaskan ATR untuk kawalan risiko yang lebih baik.

  3. Pengurusan Kedudukan: Melaksanakan logik mengambil keuntungan separa dan skala kedudukan untuk mengoptimumkan pengurusan modal dan nisbah risiko-balasan.

  4. Penapisan Masa: Tambah sekatan jendela masa dagangan untuk mengelakkan tempoh turun naik yang tinggi atau kecairan yang rendah.

  5. Pengujian dan pengoptimuman belakang: Melakukan ujian belakang sejarah yang lebih komprehensif dan menggunakan kaedah seperti algoritma genetik untuk mengoptimumkan kombinasi parameter.

Kesimpulan


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

//@version=5
strategy("Mean Regression Strategy", overlay=true)

// Bollinger Bands
length = input(20, title="Bollinger Bands Length")
src = input(close, title="Source")
mult = input(2.0, title="Bollinger Bands Multiplier")

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

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

// Trading logic
longCondition = ta.crossover(src, lower)
shortCondition = ta.crossunder(src, upper)

// Plotting signals
plotshape(series=longCondition, title="Buy Signal", location=location.belowbar, color=color.green, style=shape.labelup, text="BUY")
plotshape(series=shortCondition, title="Sell Signal", location=location.abovebar, color=color.red, style=shape.labeldown, text="SELL")

// Strategy execution
strategy.entry("Long", strategy.long, when=longCondition)
strategy.close("Long", when=shortCondition)
strategy.entry("Short", strategy.short, when=shortCondition)
strategy.close("Short", when=longCondition)

// Volume filter (optional)
useVolumeFilter = input(true, title="Use Volume Filter")
volumeThreshold = input(100000, title="Volume Threshold")

volumeCondition = na(volume) ? na : volume > volumeThreshold

if useVolumeFilter
    longCondition := longCondition and volumeCondition
    shortCondition := shortCondition and volumeCondition

// Final execution with volume filter
if useVolumeFilter
    strategy.entry("Long", strategy.long, when=longCondition)
    strategy.close("Long", when=shortCondition)
    strategy.entry("Short", strategy.short, when=shortCondition)
    strategy.close("Short", when=longCondition)

Berkaitan

Lebih lanjut