Strategi Breakout Osilator Bolbulin


Tanggal Pembuatan: 2023-11-07 15:08:36 Akhirnya memodifikasi: 2023-11-07 15:08:36
menyalin: 0 Jumlah klik: 738
1
fokus pada
1621
Pengikut

Strategi Breakout Osilator Bolbulin

Ringkasan

Strategi ini menggunakan indikator Bolbrin Band untuk menilai tren, digabungkan dengan sinyal bandwidth untuk mencari peluang perdagangan, yang bertujuan untuk mempertahankan pertumbuhan portofolio yang stabil. Menurut data tahun lalu, strategi ini memiliki tingkat keuntungan 78.95%, dan pengembalian maksimum hanya 4.02% . Ini adalah salah satu dari serangkaian strategi otomatisasi saya yang dapat membantu pertumbuhan portofolio yang stabil.

Anda juga dipersilakan untuk memberikan masukan yang berharga. Jika Anda puas dengan hasil saat ini, Anda dapat mengubahnya menjadi pembelajaran dan menambahkan peringatan, untuk mengotomatiskan strategi. Ini memerlukan tambahan mekanisme peringatan dalam kode. Jika Anda tertarik, saya dapat membuat pembelajaran terkait berdasarkan strategi tersebut.

Prinsip Strategi

Strategi ini menggunakan pita bolbrin dan bandwidth untuk menentukan waktu masuk dan keluar.

Bollinger Bands terdiri dari garis atas, garis tengah, dan garis bawah. Garis tengah adalah rata-rata bergerak sederhana selama n hari, dengan parameter n default 16. Batas atas adalah garis tengah + k.*Standar deviasi, batas bawah adalah garis tengah - k*Standar deviasi, parameter k default 3. Ketika harga mendekati batas atas, berarti harga saham terlalu tinggi atau overbuy. Ketika harga mendekati batas bawah, berarti harga saham terlalu rendah atau oversell.

Indikator bandwidth menunjukkan pergerakan harga relatif terhadap garis tengah. Ia terdiri dari (up-down) / garis tengah.*1000 dihitung sebagai berikut: Jika bandwidth kurang dari 20, berarti keadaan tenang atau stabil; Jika bandwidth lebih dari 50, berarti fluktuasi meningkat.

Strategi ini dilakukan dengan mencari peluang untuk menembus batas bawah ketika bandwidth berada di antara 20-50. Setelah melakukan over, stop-loss line ditetapkan menjadi 108% dari harga pembukaan posisi atau stop-loss ketika batas atas terjatuh.

Analisis Keunggulan

Strategi ini memiliki keuntungan sebagai berikut:

  1. Menggunakan Bolbling untuk menilai arah tren pasar, mengurangi risiko terjadinya false breaks

  2. Sinyal bandwidth dapat mengidentifikasi pergerakan posisi dengan tepat, menghindari kerugian akibat fluktuasi besar

  3. Data retrospektif menunjukkan bahwa dalam satu tahun, hampir 80 persen dari keuntungan yang diperoleh adalah risiko-keuntungan yang sangat tinggi.

  4. Penarikan maksimal kurang dari 5%, dapat mengontrol risiko secara efektif, menjaga pertumbuhan portofolio yang stabil

  5. Strategi logis yang jelas dan sederhana, mudah dipahami implementasi, dapat digunakan secara luas untuk berbagai jenis aset digital

Analisis risiko

Strategi ini juga memiliki risiko sebagai berikut:

  1. Parameter Bolbrin yang tidak tepat, kemungkinan kehilangan peluang perdagangan yang lebih baik

  2. Frekuensi perdagangan mungkin terlalu rendah dan kemampuan keuntungan terbatas ketika pasar terus bullish atau bearish.

  3. Data retesting tidak memadai, mungkin tidak dapat meniru indikator retesting dalam aplikasi nyata

  4. Dalam kondisi pasar yang ekstrem, stop loss dapat ditembus dan menyebabkan kerugian besar.

  5. Biaya transaksi yang terlalu tinggi juga mengurangi keuntungan nyata.

Solusi yang sesuai:

  1. Parameter optimasi, penyesuaian siklus Brin-Band untuk pasar yang berbeda, dll.

  2. Menambahkan indikator lain untuk mengevaluasi tren, untuk menghadapi situasi yang tidak biasa

  3. Pengumpulan data yang memadai untuk melakukan berbagai analisis pasar untuk memverifikasi stabilitas strategi

  4. Mengatur Stop Loss Dengan Tepat Untuk Mencegah Kerugian Besar Dari Perdagangan Ekstrim

  5. Memilih platform dengan biaya transaksi yang lebih rendah untuk mengurangi biaya transaksi

Arah optimasi

Strategi ini dapat dioptimalkan dengan:

  1. Memperkuat konfirmasi volume untuk menghindari false breakouts

  2. Kombinasi dengan indikator tren untuk mengidentifikasi arah tren

  3. Menggunakan pembelajaran mesin untuk menyesuaikan parameter dan beradaptasi otomatis dengan pasar

  4. Menambahkan filter korelasi untuk menghindari perdagangan aset yang tidak terkait

  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. Introduce more condition filters to increase win rate (Memperkenalkan lebih banyak filter kondisi untuk meningkatkan tingkat kemenangan)

  7. Test multi-timeframe combinations to profit from multiple cycles Menguji kombinasi multi-timeframe untuk mendapatkan keuntungan dari beberapa siklus

  8. Membangun portofolio terindeks untuk memperluas eksposur

  9. Menggunakan pembelajaran mesin untuk menghasilkan dan memvalidasi strategi baru secara otomatis

Meringkaskan

Secara keseluruhan, strategi Bollinger Shake Breakthrough memiliki hasil yang baik dan dapat menghasilkan keuntungan yang lebih stabil dalam situasi yang bergolak. Gagasan inti dari strategi ini sederhana dan jelas, dan mudah dipahami. Namun, pengoptimalan parameter, kontrol risiko, dan manajemen portofolio perlu ditingkatkan lebih lanjut untuk mendapatkan keuntungan yang stabil di pasar yang berubah-ubah yang kompleks.

Kode 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 )