
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.
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.
Strategi ini mempunyai kelebihan berikut:
Menggunakan tali bor untuk menilai arah trend, mengurangkan risiko penembusan palsu
Isyarat jalur lebar dapat menentukan pergerakan pergerakan dengan tepat, mengelakkan kerugian akibat turun naik yang besar
Data pengesanan menunjukkan bahawa hampir 80 peratus keuntungan boleh diperolehi dalam tempoh setahun, dengan risiko dan ganjaran yang sangat tinggi.
Maksimum penarikan balik kurang daripada 5%, risiko boleh dikawal dengan berkesan, mengekalkan pertumbuhan portfolio yang stabil
Logik strategi jelas, mudah difahami, mudah dilaksanakan, dan boleh digunakan secara meluas untuk pelbagai aset digital
Strategi ini juga mempunyai risiko:
Tidak betul ditetapkan parameter Bolbrin, mungkin terlepas peluang perdagangan yang lebih baik
Frekuensi dagangan mungkin terlalu rendah dan keuntungan terhad apabila pasaran berlanjutan dalam keadaan bullish atau bearish.
Data pengesanan tidak mencukupi, mungkin tidak dapat menyalin indikator pengesanan dalam aplikasi sebenar
Dalam keadaan pasaran yang melampau, titik hentian boleh ditembusi dan menyebabkan kerugian yang lebih besar
Kos dagangan yang terlalu tinggi juga mengurangkan keuntungan sebenar.
Penyelesaian:
Parameter pengoptimuman, pengesuaian kitaran Brin-Band untuk pasaran yang berbeza dan sebagainya
Pendahuluan tambahan untuk trend penilaian indikator lain, bertindak balas terhadap keadaan yang tidak biasa
Mengumpul data yang mencukupi untuk melakukan pelbagai kajian semula pasaran untuk mengesahkan kestabilan strategi
Pengaturan titik hentian yang sesuai untuk mengelakkan kerugian yang besar dalam keadaan yang melampau
Memilih platform dagangan dengan yuran rendah untuk mengurangkan kos dagangan
Strategi ini boleh dioptimumkan dengan:
Memastikan kuantiti untuk mengelakkan penembusan palsu
Gabungan dengan penunjuk trend untuk mengenal pasti arah trend
Menggunakan pembelajaran mesin untuk menyesuaikan parameter dan menyesuaikan diri dengan pasaran secara automatik
Tambah penapis korelasi untuk mengelakkan perdagangan aset yang tidak berkaitan
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
Memperkenalkan lebih banyak penapis syarat untuk meningkatkan kadar kemenangan
Test multi-timeframe combinations to profit from multiple cycles
Membina portfolio indeks untuk memperluaskan pendedahan
Menggunakan pembelajaran mesin untuk menghasilkan dan mengesahkan strategi baru secara automatik
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.
/*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 )