Sistem Perdagangan Leverage yang Dinamis yang Disesuaikan Risiko

Penulis:ChaoZhang, Tanggal: 2023-10-16 16:00:52
Tag:

img

Gambaran umum

Sistem perdagangan ini disebut Dynamic Risk-Adjusted Leverage Trading System bertujuan untuk mengelola perdagangan berdasarkan volatilitas pasar saat ini relatif terhadap rata-rata historis. Sistem ini menghitung jumlah target perdagangan terbuka berdasarkan indikator ATR dan menyesuaikan leverage sesuai dengan itu.

Logika Strategi

Sistem ini mengikuti langkah-langkah berikut:

  1. Menghitung ATR 14 periode dan menormalkannya dengan membagi dengan harga penutupan.

  2. Menghitung 100 hari Simple Moving Average (SMA) dari ATR normalisasi.

  3. Hitung rasio ATR normal terhadap SMA 100 hari.

  4. Tentukan target leverage berdasarkan kebalikan dari rasio (2/ratio).

  5. Hitung jumlah target perdagangan terbuka dengan mengalikan target leverage dengan 5.

  6. Target plot dan perdagangan terbuka saat ini pada grafik.

  7. Periksa apakah ada kesempatan untuk membeli (jika perdagangan terbuka saat ini kurang dari target) atau menutup perdagangan (jika perdagangan terbuka saat ini lebih besar dari target ditambah 1).

  8. Jika kesempatan untuk membeli, buka perdagangan panjang dan tambahkan ke array openTrades.

  9. Jika kesempatan untuk menutup perdagangan dan perdagangan ada di array openTrades, tutup perdagangan terbaru dengan mengacu array dan hapus dari array.

Sistem ini bertujuan untuk menangkap tren dengan secara dinamis menyesuaikan perdagangan terbuka dan leverage berdasarkan volatilitas pasar.

Analisis Keuntungan

Keuntungan dari strategi ini:

  1. Penyesuaian dinamis leverage dan ukuran posisi berdasarkan perubahan volatilitas pasar dapat secara efektif mengelola risiko.

  2. Menggunakan indikator ATR untuk menghitung ukuran posisi target, yang mencerminkan volatilitas pasar, adalah pilihan yang wajar.

  3. Piramida dengan beberapa posisi dapat mendapatkan keuntungan dari tren.

  4. Mencatat setiap perdagangan dalam array memungkinkan kontrol eksplisit pembukaan dan penutupan perdagangan.

  5. Strategi ini memiliki beberapa parameter dan mudah diterapkan dan dioperasikan.

  6. Logika jelas dan struktur kode terorganisir dengan baik untuk pengoptimalan dan iterasi yang mudah.

Analisis Risiko

Risiko dari strategi ini:

  1. ATR hanya mencerminkan volatilitas masa lalu, tidak dapat memprediksi perubahan masa depan, dapat menyebabkan penyesuaian leverage yang tidak tepat.

  2. Pyramiding dapat mengumpulkan kerugian ketika tren berbalik.

  3. Array recording hanya berlaku untuk operasi open/close sederhana.

  4. Target leverage dan pengaturan ukuran posisi perlu disesuaikan berdasarkan spesifikasi simbol daripada parameter tetap.

  5. Mengandalkan indikator tunggal dapat menyesatkan. indikator volatilitas lain atau algoritma pembelajaran mesin dapat meningkatkan ketahanan.

Arahan Optimasi

Strategi dapat dioptimalkan dalam aspek berikut:

  1. Tambahkan stop loss untuk secara aktif memotong kerugian saat mencapai level stop loss.

  2. Mengoptimalkan parameter indikator dengan menguji periode ATR yang berbeda.

  3. Cobalah strategi entri lain seperti entri kuantitas tetap dan uji hasilnya.

  4. Tambahkan metrik volatilitas lainnya seperti Bollinger Bands WIDTH, KD, RSI dll untuk penggunaan kombinasi.

  5. Gunakan model pembelajaran mesin untuk memprediksi volatilitas alih-alih kelancaran sederhana.

  6. Mengoptimalkan perhitungan ukuran posisi, seperti menggunakan kelipatan ATR atau fungsi volatilitas.

  7. Catat lebih banyak detail entri seperti harga masuk, waktu dll untuk analisis strategi dan optimasi.

  8. Tambahkan pengoptimalan parameter untuk pengoptimalan otomatis untuk menemukan set parameter optimal.

Kesimpulan

Strategi ini secara dinamis menyesuaikan leverage dan ukuran posisi berdasarkan ATR untuk mengelola eksposur risiko selama tren, dan memiliki keuntungan tertentu. tetapi tantangan seperti kesulitan pengaturan parameter dan ruang pengoptimalan indikator tetap untuk perbaikan lebih lanjut. secara keseluruhan, logika jelas dan mudah dioperasikan dan dioptimalkan, layak untuk penelitian dan aplikasi yang mendalam.


/*backtest
start: 2022-10-09 00:00:00
end: 2023-10-15 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=5
strategy("I11L - Risk Adjusted Leveraging", overlay=false, pyramiding=25, default_qty_value=20, initial_capital=20000, default_qty_type=strategy.percent_of_equity,process_orders_on_close=false, calc_on_every_tick=false)

atr = ta.atr(14) / close
avg_atr = ta.sma(atr,100)
ratio = atr / avg_atr

targetLeverage = 2 / ratio
targetOpentrades = 5 * targetLeverage

plot(targetOpentrades)
plot(strategy.opentrades)
isBuy = strategy.opentrades < targetOpentrades
isClose = strategy.opentrades > targetOpentrades + 1

var string[] openTrades = array.new_string(0)

if(isBuy)
    strategy.entry("Buy"+str.tostring(array.size(openTrades)),strategy.long)
    array.push(openTrades, "Buy" + str.tostring(array.size(openTrades)))

if(isClose)
    if array.size(openTrades) > 0
        strategy.close(array.get(openTrades, array.size(openTrades) - 1))
        array.pop(openTrades)

Lebih banyak