Sumber dimuat naik... memuat...

Strategi Dagangan Bollinger Bands dengan isyarat pulangan rasional

Penulis:ChaoZhang, Tarikh: 2025-01-06 15:33:01
Tag:BBMASDMRRSIVOL

img

Ringkasan

Strategi ini adalah sistem perdagangan kuantitatif berdasarkan Bollinger Bands dan prinsip pembalikan purata harga. Ia memantau penyimpangan harga dari purata bergerak, digabungkan dengan isyarat pecah Bollinger Bands, untuk berdagang apabila menjangkakan regresi harga selepas keadaan pasar terlalu banyak beli / terlalu banyak jual. Strategi ini menggunakan ambang peratusan untuk mengukur penyimpangan harga dan menetapkan syarat pemicu yang munasabah untuk menapis isyarat palsu dan meningkatkan ketepatan perdagangan.

Prinsip Strategi

Logik teras adalah berdasarkan elemen utama berikut:

  1. Menggunakan purata bergerak 20 hari sebagai jalur tengah, dengan 2 penyimpangan standard untuk membina Bollinger Bands
  2. Memperkenalkan ambang penyimpangan harga 3.5% untuk mengenal pasti perbezaan yang ketara
  3. Mengesan status penyimpangan harga melalui pembolehubah is_outside
  4. Memicu isyarat perdagangan apabila harga kembali dalam Bollinger Bands
  5. Peraturan perdagangan khusus:
    • Lama apabila harga kembali dari penyimpangan dan memecahkan di atas jalur atas
    • Pendek apabila harga kembali dari penyimpangan dan pecah di bawah jalur bawah

Kelebihan Strategi

  1. Logik pembalikan purata yang kukuh
    • Berdasarkan prinsip statistik harga kembali kepada purata
    • Memastikan kepentingan peluang dagangan melalui ambang penyimpangan
  2. Kawalan Risiko yang Komprehensif
    • Bollinger Bands menyediakan rujukan julat turun naik yang jelas
    • Pengesanan status penyimpangan mengelakkan perdagangan semasa turun naik yang melampau
  3. Penyesuaian Parameter yang Kuat
    • Parameter Bollinger Bands yang boleh diselaraskan dengan ciri instrumen
    • Sempadan penyimpangan boleh ditetapkan mengikut pilihan risiko.

Risiko Strategi

  1. Risiko Keefektifan Pasar Trend
    • Boleh menghasilkan isyarat palsu yang kerap di pasaran trend yang kuat
    • Mencadangkan penambahan penapis trend untuk mengenal pasti keadaan pasaran
  2. Risiko Sensitiviti Parameter
    • Tetapan parameter yang tidak betul boleh mempengaruhi prestasi strategi
    • Memerlukan pengoptimuman parameter melalui backtesting data sejarah
  3. Risiko Kos Lolos
    • Perdagangan yang kerap boleh menimbulkan kos transaksi yang tinggi
    • Mencadangkan menambah had masa kedudukan dan kawalan kos

Arahan Pengoptimuman Strategi

  1. Tambah Pengiktirafan persekitaran pasaran
    • Memperkenalkan penunjuk kekuatan trend seperti ADX
    • Sesuaikan parameter secara dinamik berdasarkan keadaan pasaran
  2. Meningkatkan mekanisme Stop-Loss dan Take Profit
    • Tetapkan berhenti dinamik berdasarkan ATR
    • Memperkenalkan hentian untuk melindungi keuntungan
  3. Mengoptimumkan Frekuensi Dagangan
    • Tambah masa tahan kedudukan minimum
    • Tetapkan selang perdagangan untuk mengawal kos

Ringkasan

Strategi ini menangkap peluang overbought / oversold pasaran melalui Bollinger Bands dan prinsip-prinsip pembalikan rata-rata, berkesan mengawal risiko perdagangan dengan ambang penyimpangan yang munasabah dan mekanisme penjejakan status. Kerangka strategi mempunyai skalabiliti yang baik dan dapat disesuaikan dengan persekitaran pasaran yang berbeza melalui pengoptimuman parameter dan peningkatan fungsi. Ia disyorkan untuk memberi tumpuan kepada kawalan risiko dalam perdagangan langsung dan menyesuaikan parameter mengikut ciri instrumen tertentu.


/*backtest
start: 2024-12-06 00:00:00
end: 2025-01-04 08:00:00
period: 2h
basePeriod: 2h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=5
strategy("Estratégia com Bandas de Bollinger e Sinal de Retorno", overlay=true, default_qty_type=strategy.percent_of_equity, default_qty_value=200)

// Configurações das Bandas de Bollinger
length = input.int(20, title="Período da média")
mult = input.float(2.0, title="Desvio padrão")
bbBasis = ta.sma(close, length)
bbUpper = bbBasis + mult * ta.stdev(close, length)
bbLower = bbBasis - mult * ta.stdev(close, length)

// Configuração para a distância da média
percent_threshold = input.float(3.5, title="Distância da média (%)") / 100

dist_from_mean = 0.0
trigger_condition = false
if not na(bbBasis)
    dist_from_mean := math.abs(close - bbBasis) / bbBasis
    trigger_condition := dist_from_mean >= percent_threshold

// Variáveis para identificar o estado do afastamento
var bool is_outside = false
var color candle_color = color.new(color.white, 0)

if trigger_condition
    is_outside := true

if is_outside and close <= bbUpper and close >= bbLower
    is_outside := false
    candle_color := color.new(color.blue, 0) // Atribui uma cor válida
else
    candle_color := color.new(color.white, 0)

// Aplicar cor às velas
barcolor(candle_color)

// Plotar Bandas de Bollinger
plot(bbBasis, color=color.yellow, title="Média")
plot(bbUpper, color=color.red, title="Banda Superior")
plot(bbLower, color=color.green, title="Banda Inferior")

// Lógica de entrada e saída
longCondition = not is_outside and close > bbUpper
if (longCondition)
    strategy.entry("Buy", strategy.long)

shortCondition = not is_outside and close < bbLower
if (shortCondition)
    strategy.entry("Sell", strategy.short)


Berkaitan

Lebih lanjut