Strategi Mengikuti Tren ATR Dinamis Stop Loss Chande-Kroll

SMA ATR SPX
Tanggal Pembuatan: 2024-06-14 15:15:43 Akhirnya memodifikasi: 2024-06-14 15:15:43
menyalin: 0 Jumlah klik: 736
1
fokus pada
1617
Pengikut

Strategi Mengikuti Tren ATR Dinamis Stop Loss Chande-Kroll

Ringkasan

Strategi pelacakan tren Chande-Kroll Stop Loss Dynamic ATR adalah strategi perdagangan kuantitatif yang didasarkan pada indikator Stop Loss Chande-Kroll dan Simple Moving Average (SMA). Strategi ini dirancang untuk menangkap tren naik di pasar sambil menggunakan stop loss dinamis untuk mengelola risiko. Indikator Stop Loss Chande-Kroll menyesuaikan tingkat stop loss dinamis berdasarkan rata-rata gelombang nyata (ATR) untuk menyesuaikan dengan berbagai kondisi pasar yang bergejolak.

Prinsip Strategi

Inti dari strategi ini adalah indikator stop loss Chande-Kroll, yang menggunakan ATR untuk menghitung tingkat stop loss dinamis. ATR mengukur volatilitas pasar, dan tingkat stop loss disesuaikan dengan ATR dan dinamika perkalian. Ini memastikan bahwa posisi stop loss dapat disesuaikan dengan kondisi pasar saat ini. Kondisi over: Mulai over ketika harga close breaks Chande-Kroll downtrend dan di atas 21 siklus SMA. Kondisi posisi terdepan: posisi terdepan terjadi ketika harga close out jatuh di atas Chande-Kroll.

Keunggulan Strategis

  1. Stop loss dinamis: Indikator stop loss Chande-Kroll didasarkan pada ATR yang menghitung tingkat stop loss dinamis, dapat beradaptasi dengan berbagai kondisi pasar yang berfluktuasi, meningkatkan efektivitas stop loss.
  2. Pemantauan tren: 21 siklus SMA berfungsi sebagai filter tren, memastikan perdagangan sesuai dengan arah tren utama, mengurangi risiko perdagangan berlawanan.
  3. Fleksibilitas parameter: parameter strategi seperti siklus ATR, perkalian ATR, siklus stop loss, dan siklus SMA dapat disesuaikan dengan preferensi pengguna untuk meningkatkan fleksibilitas strategi.
  4. Manajemen ukuran posisi: ukuran posisi beradaptasi secara dinamis sesuai dengan kelipatan risiko dan kondisi pasar saat ini yang berfluktuasi, untuk mencapai manajemen risiko yang dinamis.

Risiko Strategis

  1. Risiko Optimasi Parameter: Parameter strategi perlu dioptimalkan sesuai dengan kondisi pasar yang berbeda dan varietas perdagangan, pengaturan parameter yang tidak tepat dapat menyebabkan kinerja strategi yang buruk.
  2. Risiko pengakuan tren: Strategi dapat menghasilkan sinyal yang salah dan menyebabkan kerugian pada awal pasar yang bergoyang atau pembalikan tren.
  3. Slippage dan biaya transaksi: Pada transaksi yang sebenarnya, slippage dan biaya transaksi akan mempengaruhi pendapatan bersih dari strategi tersebut. Langkah-langkah manajemen risiko meliputi: analisis komprehensif dan pengoptimalan parameter strategi; mengikuti aturan strategi secara ketat dalam perdagangan nyata, mengendalikan risiko setiap perdagangan; evaluasi kinerja strategi secara teratur dan melakukan penyesuaian jika diperlukan.

Arah optimasi strategi

  1. Multi-Hot Two-Way Trading: Strategi saat ini hanya untuk melakukan multi-sinyal, dapat diperluas menjadi multi-hot two-way trading untuk menangkap peluang dalam berbagai lingkungan pasar.
  2. Optimasi parameter dinamis: Menggunakan pembelajaran mesin atau algoritma optimasi untuk menyesuaikan parameter strategi secara real-time sesuai dengan kondisi pasar, meningkatkan adaptasi.
  3. Kombinasi dengan indikator teknis lainnya: memperkenalkan indikator lain seperti tren atau getaran, membangun strategi multi-faktor, meningkatkan keandalan sinyal.
  4. Menambahkan indikator sentimen pasar: Menggabungkan indikator sentimen pasar seperti VIX dan lain-lain, untuk mengendalikan perdagangan saat sentimen pasar ekstrem, meningkatkan kemampuan manajemen risiko.

Meringkaskan

Strategi tracking tren ATR Chande-Kroll Stop Loss Dynamic adalah strategi perdagangan kuantitatif yang didasarkan pada prinsip tracking tren dan stop loss dinamis. Dengan kombinasi indikator stop loss Chande-Kroll dan filter tren SMA, strategi ini dapat secara efektif mengelola risiko sambil menangkap tren naik. Fleksibilitas parameter strategi dan penyesuaian dinamis skala posisi, meningkatkan lebih lanjut kemampuan adaptasi strategi.

Kode Sumber Strategi
/*backtest
start: 2023-06-08 00:00:00
end: 2024-06-13 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=5
strategy("Chande Kroll Stop Strategy", overlay=true, initial_capital = 1000, commission_type = strategy.commission.percent, commission_value = 0.01, slippage = 3)

// Chande Kroll Stop parameters
calcMode = input.string(title="Calculation Mode", defval="Exponential", options=["Linear", "Exponential"])
riskMultiplier = input(5, "Risk Multiplier")
atrPeriod = input(10, "ATR Period")
atrMultiplier = input(3, "ATR Multiplier")
stopLength = input(21, "Stop Length")
smaLength = input(21, "SMA Length")

// Calculate ATR
atr = ta.atr(atrPeriod)

// Calculate Chande Kroll Stop
highStop = ta.highest(high, stopLength) - atrMultiplier * atr
lowStop = ta.lowest(low, stopLength) + atrMultiplier * atr

sma21 = ta.sma(close, smaLength)

// Entry and Exit conditions
longCondition = ta.crossover(close, lowStop) and close > sma21
exitLongCondition = close < highStop

// Funktion zur Berechnung der Menge
calc_qty(mode, riskMultiplier) =>
    lowestClose = ta.lowest(close, 1560)
    if mode == "Exponential"
        qty = riskMultiplier / lowestClose * 1000 * strategy.equity / strategy.initial_capital
    else
        qty = riskMultiplier / lowestClose * 1000

// Berechnung der Menge basierend auf der Benutzerwahl
qty = calc_qty(calcMode, riskMultiplier)

// Execute strategy
if (longCondition)
    strategy.entry("Long", strategy.long, qty=qty)
    alert("Buy Signal", alert.freq_once_per_bar_close)

if (exitLongCondition)
    strategy.close("Long")
    alert("Sell Signal", alert.freq_once_per_bar_close)

// Plotting
plotshape(series=longCondition, location=location.belowbar, color=#0097a7, style=shape.triangleup, size=size.small, title="Buy Signal")
plotshape(series=ta.crossunder(close, highStop), location=location.abovebar, color=#ff195f, style=shape.triangledown, size=size.small, title="Sell Signal")
plot(sma21, color=color.gray)
plot(highStop, color=#0097a7)
plot(lowStop, color=#ff195f)