Bolbulin Oscillator Breakout Strategy


Tarikh penciptaan: 2023-11-07 15:08:36 Akhirnya diubah suai: 2023-11-07 15:08:36
Salin: 0 Bilangan klik: 736
1
fokus pada
1617
Pengikut

Bolbulin Oscillator Breakout Strategy

Gambaran keseluruhan

Strategi ini menggunakan indikator Bolbrin untuk menilai trend, digabungkan dengan isyarat bandwidth untuk mencari peluang perdagangan, bertujuan untuk mengekalkan pertumbuhan portfolio yang stabil. Menurut data tahun lalu, strategi ini mempunyai kadar keuntungan sebanyak 78.95%, dan penarikan balik maksimum hanya -4.02%. Ini adalah salah satu daripada siri strategi automasi saya yang dapat membantu pertumbuhan portfolio yang stabil.

Anda boleh menyesuaikan parameter untuk ujian semula, dan anda boleh memberi maklum balas yang berharga. Jika anda berpuas hati dengan hasil semasa, anda boleh memindahkannya ke pembelajaran dan menambah amaran, untuk mewujudkan automasi strategi. Ini memerlukan tambahan mekanisme amaran dalam kod.

Prinsip Strategi

Strategi ini menggunakan pita dan lebar lebar bola untuk menentukan masa masuk dan keluar.

Talian bolbrin terdiri daripada garis atas, garis tengah dan garis bawah. Garis tengah adalah purata bergerak sederhana n hari, dengan parameter n secara default 16. Had atas adalah garis tengah + k.*Penyimpangan standard, had bawah adalah garis tengah - k*Penyimpangan piawai, parameter k dianggap sebagai 3 ◦ apabila harga mendekati had atas, menandakan harga saham terlalu tinggi atau terlalu banyak ◦ apabila harga mendekati had bawah, menandakan harga saham terlalu rendah atau terlalu banyak ◦

Indeks bandwidth menunjukkan pergerakan harga ke garisan tengah. Ia terdiri daripada ((garisan atas-garisan bawah) / garisan tengah*1000 dikira sebagai berikut: Apabila bandwidth di bawah 20, ia menunjukkan keadaan tenang atau stabil; Apabila bandwidth melebihi 50, ia menunjukkan peningkatan pergerakan.

Strategi ini adalah untuk mencari peluang untuk menembusi had bawah ketika bandwidth berada di antara 20-50. Apabila melakukan lebih banyak, barisan hentikan ditetapkan sebagai 108 peratus daripada harga pembukaan atau berhenti ketika had atas telah dilanggar.

Analisis kelebihan

Strategi ini mempunyai kelebihan berikut:

  1. Menggunakan tali bor untuk menilai arah trend, mengurangkan risiko penembusan palsu

  2. Isyarat jalur lebar dapat menentukan pergerakan pergerakan dengan tepat, mengelakkan kerugian akibat turun naik yang besar

  3. Data pengesanan menunjukkan bahawa hampir 80 peratus keuntungan boleh diperolehi dalam tempoh setahun, dengan risiko dan ganjaran yang sangat tinggi.

  4. Maksimum penarikan balik kurang daripada 5%, risiko boleh dikawal dengan berkesan, mengekalkan pertumbuhan portfolio yang stabil

  5. Logik strategi jelas, mudah difahami, mudah dilaksanakan, dan boleh digunakan secara meluas untuk pelbagai aset digital

Analisis risiko

Strategi ini juga mempunyai risiko:

  1. Tidak betul ditetapkan parameter Bolbrin, mungkin terlepas peluang perdagangan yang lebih baik

  2. Frekuensi dagangan mungkin terlalu rendah dan keuntungan terhad apabila pasaran berlanjutan dalam keadaan bullish atau bearish.

  3. Data pengesanan tidak mencukupi, mungkin tidak dapat menyalin indikator pengesanan dalam aplikasi sebenar

  4. Dalam keadaan pasaran yang melampau, titik hentian boleh ditembusi dan menyebabkan kerugian yang lebih besar

  5. Kos dagangan yang terlalu tinggi juga mengurangkan keuntungan sebenar.

Penyelesaian:

  1. Parameter pengoptimuman, pengesuaian kitaran Brin-Band untuk pasaran yang berbeza dan sebagainya

  2. Pendahuluan tambahan untuk trend penilaian indikator lain, bertindak balas terhadap keadaan yang tidak biasa

  3. Mengumpul data yang mencukupi untuk melakukan pelbagai kajian semula pasaran untuk mengesahkan kestabilan strategi

  4. Pengaturan titik hentian yang sesuai untuk mengelakkan kerugian yang besar dalam keadaan yang melampau

  5. Memilih platform dagangan dengan yuran rendah untuk mengurangkan kos dagangan

Arah pengoptimuman

Strategi ini boleh dioptimumkan dengan:

  1. Memastikan kuantiti untuk mengelakkan penembusan palsu

  2. Gabungan dengan penunjuk trend untuk mengenal pasti arah trend

  3. Menggunakan pembelajaran mesin untuk menyesuaikan parameter dan menyesuaikan diri dengan pasaran secara automatik

  4. Tambah penapis korelasi untuk mengelakkan perdagangan aset yang tidak berkaitan

  5. Optimize take profit/stop loss for more gains during uptrends Optimize take profit/stop loss for more gains during uptrends Optimize take profit/stop loss for more gains during uptrends

  6. Memperkenalkan lebih banyak penapis syarat untuk meningkatkan kadar kemenangan

  7. Test multi-timeframe combinations to profit from multiple cycles

  8. Membina portfolio indeks untuk memperluaskan pendedahan

  9. Menggunakan pembelajaran mesin untuk menghasilkan dan mengesahkan strategi baru secara automatik

ringkaskan

Strategi penembusan goyah Bolbrin ini mempunyai kesan pengukuran keseluruhan yang baik, dan dapat memperoleh keuntungan yang lebih stabil dalam keadaan goyah. Gagasan teras strategi mudah difahami dan mudah difahami. Tetapi pengoptimuman parameter, kawalan risiko dan pengurusan portfolio memerlukan peningkatan lebih lanjut untuk mendapatkan keuntungan yang stabil di pasaran yang berubah-ubah yang kompleks.

Kod sumber strategi
/*backtest
start: 2023-10-30 00:00:00
end: 2023-11-06 00:00:00
period: 3m
basePeriod: 1m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=4
strategy("Bollinger Bands BAT/USDT 30min", overlay=true )

/// Indicators
///Bollinger Bands
source = close
length = input(16, minval=1)
mult = input(3, step=0.1, minval=0.001, maxval=50)
basis = sma(source, length)
dev = mult * stdev(source, length)

upper = basis + dev
lower = basis - dev

plot(basis, color=color.red)
p1 = plot(upper, color=color.blue)
p2 = plot(lower, color=color.blue)
fill(p1, p2)

//Bollinger bands width
bbw = (upper-lower)/basis*1000
//plot(bbw, color=color.blue)

upper_bbw_input = input(title="BBW Upper Threshold", step=1, minval=0, defval=50)
lower_bbw_input = input(title="BBW Lower Threshold", step=1, minval=0, defval=20)


// Backtesting Period
testStartYear = input(2019, "Backtest Start Year")
testStartMonth = input(1, "Backtest Start Month")
testStartDay = input(1, "Backtest Start Day")
testPeriodStart = timestamp(testStartYear,testStartMonth,testStartDay,0,0)

testStopYear = input(2020, "Backtest Stop Year")
testStopMonth = input(12, "Backtest Stop Month")
testStopDay = input(31, "Backtest Stop Day")
testPeriodStop = timestamp(testStopYear,testStopMonth,testStopDay,0,0)

testPeriod() => true

// Take Profit
tp_inp = input(8, title='Take Profit %', step=0.1)/100
take_level = strategy.position_avg_price * (1 + tp_inp)

//Entry Strategy
entry_long = crossover(source, lower) and (bbw < upper_bbw_input) and (bbw > lower_bbw_input)
exit_long = cross(high,upper) or close < lower

if testPeriod()

    strategy.entry(id="LongBB", long=true, comment="LongBB", when=entry_long)
    strategy.exit("Take Profit Long","LongBB",limit=take_level)
    strategy.close(id="LongBB", when=exit_long )