Strategi saluran rata-rata pergerakan ganda pelacakan tren dinamis dan sistem manajemen risiko

SMA MAC
Tanggal Pembuatan: 2025-01-10 16:26:56 Akhirnya memodifikasi: 2025-01-10 16:26:56
menyalin: 7 Jumlah klik: 374
1
fokus pada
1617
Pengikut

Strategi saluran rata-rata pergerakan ganda pelacakan tren dinamis dan sistem manajemen risiko

Ringkasan

Strategi ini adalah sistem pelacakan tren dinamis berdasarkan saluran rata-rata pergerakan ganda, dikombinasikan dengan mekanisme manajemen risiko. Strategi ini menggunakan dua rata-rata pergerakan sederhana (SMA) untuk membangun saluran perdagangan, di mana rel atas menggunakan rata-rata pergerakan yang dihitung berdasarkan harga tertinggi, dan rel bawah menggunakan rata-rata pergerakan yang dihitung berdasarkan harga terendah. Sistem ini menggunakan lima harga penutupan garis K berturut-turut yang menembus jalur atas sebagai sinyal masuk, dan menggunakan lima harga penutupan garis K berturut-turut yang turun di bawah jalur bawah atau mundur 25% dari titik tertinggi sebagai sinyal keluar, mewujudkan tren dinamis. pelacakan dan pengendalian risiko.

Prinsip Strategi

Prinsip inti dari strategi ini adalah menangkap tren harga melalui saluran rata-rata pergerakan ganda dan membangun mekanisme masuk dan keluar yang ketat:

  1. Mekanisme masuk: mengharuskan harga tetap berada di atas jalur atas selama lima hari berturut-turut untuk memastikan kesinambungan dan efektivitas tren
  2. Mekanisme keluar: dibagi menjadi dua level
    • Keluar dari divergensi tren: Ketika harga turun di bawah jalur bawah selama lima hari berturut-turut, ini menunjukkan tren mungkin berbalik.
    • Stop loss: Ketika harga turun 25% dari titik tertinggi, stop loss dipicu untuk mencegah kerugian yang berlebihan
  3. Manajemen posisi: Membuka posisi pada rasio tetap dari total nilai akun untuk mencapai alokasi dana yang efektif

Keunggulan Strategis

  1. Stabilitas mengikuti tren: Saring sinyal breakout palsu dengan memerlukan konfirmasi breakout selama lima hari berturut-turut
  2. Integritas pengendalian risiko: Gabungkan divergensi tren dan mekanisme stop loss untuk membangun perlindungan ganda
  3. Parameter yang fleksibel dan dapat disesuaikan: periode rata-rata pergerakan dan rasio stop loss dapat dioptimalkan sesuai dengan karakteristik pasar yang berbeda
  4. Logika eksekusi yang jelas: kondisi masuk dan keluar yang jelas, mengurangi gangguan yang disebabkan oleh penilaian subjektif
  5. Manajemen dana ilmiah: Gunakan posisi proporsi akun alih-alih lot tetap untuk mengendalikan risiko dengan lebih baik

Risiko Strategis

  1. Risiko pasar yang fluktuatif: Sinyal palsu mudah dihasilkan di pasar yang sideways dan fluktuatif, yang menyebabkan seringnya transaksi
  2. Risiko tergelincir: Di pasar yang bergerak cepat, harga eksekusi stop loss bisa saja menyimpang secara signifikan dari ekspektasi.
  3. Ketergantungan parameter: Parameter optimal dapat sangat bervariasi dalam lingkungan pasar yang berbeda
  4. Penundaan tren: Karena penggunaan rata-rata bergerak, ada jeda tertentu dalam titik balik tren
  5. Efisiensi dana: Kondisi kepemilikan relatif ketat, dan beberapa peluang keuntungan mungkin terlewatkan.

Arah optimasi strategi

  1. Optimasi parameter dinamis: Mengembangkan sistem parameter adaptif untuk secara otomatis menyesuaikan periode rata-rata bergerak sesuai dengan volatilitas pasar
  2. Filter lingkungan pasar: Tambahkan indikator kekuatan tren untuk secara otomatis mengurangi frekuensi perdagangan di pasar yang bergejolak
  3. Konfirmasi multi-periode waktu: Tambahkan mekanisme konfirmasi tren jangka panjang untuk meningkatkan keandalan sinyal
  4. Optimalisasi stop loss: memperkenalkan mekanisme stop loss dinamis untuk secara otomatis menyesuaikan rasio stop loss sesuai dengan volatilitas
  5. Optimalisasi manajemen posisi: menyesuaikan rasio pembukaan secara dinamis berdasarkan volatilitas dan rasio untung rugi

Meringkaskan

Strategi ini membangun sistem perdagangan pelacakan tren yang lengkap melalui saluran rata-rata pergerakan ganda, dikombinasikan dengan konfirmasi entri yang ketat dan mekanisme keluar ganda, untuk mencapai pelacakan tren yang efektif dan pengendalian risiko yang efektif. Keunggulan strategi ini adalah logika eksekusi yang jelas dan pengendalian risiko yang sempurna, tetapi masih memerlukan optimalisasi parameter untuk lingkungan pasar yang berbeda-beda, dan dapat lebih ditingkatkan dengan menambahkan penyaringan lingkungan pasar, konfirmasi multi-periode waktu, dsb. Secara keseluruhan, ini adalah strategi perdagangan kuantitatif dengan struktur lengkap dan logika yang ketat, yang cocok untuk diterapkan di lingkungan pasar dengan tren yang jelas.

Kode Sumber Strategi
/*backtest
start: 2025-01-02 00:00:00
end: 2025-01-09 00:00:00
period: 10m
basePeriod: 10m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT","balance":49999}]
*/

//@version=5
strategy("Moving Average Channel (MAC)", overlay=true, default_qty_type=strategy.percent_of_equity, default_qty_value=100)

// Parameters for Moving Averages
upperMALength = input.int(10, title="Upper MA Length")
lowerMALength = input.int(8, title="Lower MA Length")
stopLossPercent = input.float(25.0, title="Stop Loss (%)", minval=0.1) / 100

// Calculate Moving Averages
upperMA = ta.sma(high, upperMALength)
lowerMA = ta.sma(low, lowerMALength)

// Plot Moving Averages
plot(upperMA, color=color.red, title="Upper Moving Average")
plot(lowerMA, color=color.green, title="Lower Moving Average")

// Initialize variables
var int upperCounter = 0
var int lowerCounter = 0
var float entryPrice = na
var float highestPrice = na

// Update counters based on conditions
if (low <= upperMA)
    upperCounter := 0
else
    upperCounter += 1

if (high >= lowerMA)
    lowerCounter := 0
else
    lowerCounter += 1

// Entry condition: 5 consecutive bars above the Upper MA
if (upperCounter == 5 and strategy.position_size == 0)
    strategy.entry("Long", strategy.long)
    highestPrice := high  // Initialize highest price

// Update the highest price after entry
if (strategy.position_size > 0)
    highestPrice := na(highestPrice) ? high : math.max(highestPrice, high)

// Exit condition: 5 consecutive bars below the Lower MA
if (lowerCounter == 5 and strategy.position_size > 0)
    strategy.close("Long", comment="Exit: 5 bars below Lower MA")

// Stop-loss condition: Exit if market closes below 25% of the highest price since entry
stopLossCondition = low < highestPrice * (1 - stopLossPercent)
if (stopLossCondition and strategy.position_size > 0)
    strategy.close("Long", comment="Exit: Stop Loss")