Strategi perdagangan kuantitatif corak pembalikan tiga kali berdasarkan pengambilan untung penjejakan dinamik ATR

ATR 动态跟踪止盈 短期反转 波动率止盈 震荡市场策略 趋势反转 技术分析
Tarikh penciptaan: 2025-05-20 10:32:47 Akhirnya diubah suai: 2025-05-20 10:32:47
Salin: 1 Bilangan klik: 338
2
fokus pada
319
Pengikut

Strategi perdagangan kuantitatif corak pembalikan tiga kali berdasarkan pengambilan untung penjejakan dinamik ATR Strategi perdagangan kuantitatif corak pembalikan tiga kali berdasarkan pengambilan untung penjejakan dinamik ATR

Gambaran keseluruhan

Strategi perdagangan kuantitatif dengan tiga model pembalikan yang berdasarkan pada ATR yang dinamik adalah sistem perdagangan kuantitatif yang direka khusus untuk mengenal pasti isyarat kehabisan pasaran jangka pendek. Gagasan utama strategi ini adalah untuk menangkap isyarat pembalikan yang muncul selepas tiga isometrik yang berturut-turut dan melindungi keuntungan melalui mekanisme pembalikan yang dinamik berdasarkan purata gelombang sebenar (ATR). Strategi ini sangat sesuai untuk jangka masa pendek seperti 15 minit, 1 jam dan 4 jam, yang dapat menyesuaikan diri secara automatik dengan ciri-ciri turun naik dalam persekitaran pasaran yang berbeza, tanpa perlu menetapkan stop loss tetap, tetapi untuk mengawal risiko melalui mekanisme pemutusan yang dinamik.

Prinsip Strategi

Logik masuk strategi ini berdasarkan pengenalan corak harga yang jelas:

  1. Tiga garis arah berturut-turut membentuk pengesahan arah:

    • Buat banyak isyarat: Satu garis putaran bullish muncul selepas tiga garis putaran bearish berturut-turut
    • Sinyal penarikan: Satu garis pembalikan turun selepas tiga garisan penarikan berterusan
  2. Kabel pembalikan mesti mempunyai entiti yang cukup besar, yang ditetapkan dalam kod sebagai sekurang-kurangnya 3% dari saiz volum, untuk memastikan isyarat pembalikan cukup kuat

  3. Perdagangan masuk semasa penutupan saluran pembalikan

Strategi ini menggunakan ATR untuk logik penarikan diri dari permainan.

  1. Mengira nilai ATR 14 kitaran untuk mengukur turun naik pasaran
  2. Mekanisme Tracking Stop diaktifkan apabila harga bergerak ke arah yang menguntungkan sekurang-kurangnya 1.5 kali jarak ATR
  3. Jika harga berundur 1.0 kali ATR dari kedudukan yang paling menguntungkan, isyarat keluar akan dicetuskan

Analisis kod menunjukkan bahawa strategi ini tidak menetapkan stop loss tetap, tetapi bergantung pada mekanisme perlindungan selepas keuntungan untuk menguruskan risiko. Strategi ini membenarkan maksimum 5 kali kenaikan piramid, menggunakan 50% kepentingan akaun untuk setiap perdagangan, dan mempertimbangkan komisen perdagangan 0,05% .

Kelebihan Strategik

  1. Mekanisme pengiktirafan pembalikan yang tepat: Dengan mod gabungan tiga pembalikan simetrik yang berturut-turut, peningkatan ketepatan pengiktirafan pembalikan sebenar dan pengurangan isyarat palsu.

  2. Dinamik menyesuaikan diri dengan turun naik pasaran: menggunakan ATR sebagai penunjuk kadar turun naik, membolehkan strategi menyesuaikan diri secara automatik dengan ciri turun naik di pasaran yang berbeza dan dalam tempoh yang berbeza, tanpa perlu menyesuaikan parameter secara manual.

  3. Mekanisme perlindungan dana yang bijak: Mekanisme perlindungan dimulakan hanya selepas perdagangan memperoleh keuntungan tertentu, mengelakkan keluar awal yang disebabkan oleh kejutan kecil di pasaran, dan mengunci keuntungan tepat pada masanya apabila keuntungan dikeluarkan.

  4. Pengurusan kedudukan yang fleksibel: menyokong kenaikan kedudukan seperti piramida, anda boleh menambah kedudukan selepas trend disahkan, meningkatkan potensi keuntungan.

  5. Kebolehgunaan yang meluas: Reka bentuk strategi sangat berkesan untuk pasaran yang bergolak dan titik balik trend, digunakan untuk pasaran yang lebih bergolak seperti mata wang kripto, emas dan forex.

  6. Parameter ringkas dan mudah disesuaikan: hanya perlu menetapkan peratusan volum minimum, panjang kitaran ATR dan parameter hentian penjejakan, untuk memudahkan pengoptimuman dan penyesuaian dengan keadaan pasaran yang berbeza.

Risiko Strategik

  1. Tidak ada risiko berhenti tetap: strategi tidak menetapkan titik berhenti dalam erti kata tradisional, sebelum mengaktifkan tracking stop, jika pergerakan pasaran yang tidak menguntungkan berterusan, ia boleh menyebabkan kerugian yang lebih besar. Untuk menghadapi risiko ini, peniaga disarankan untuk mempertimbangkan untuk menambah mekanisme berhenti kecemasan berdasarkan masa atau peratusan kerugian maksimum.

  2. Risiko overtrading: Oleh kerana syarat masuk agak longgar (hanya memerlukan 3 simetri dan 1 simetri), terlalu banyak isyarat perdagangan mungkin dihasilkan dalam pasaran yang bergolak. Perdagangan yang tidak perlu dapat dikurangkan dengan menambahkan syarat penapis tambahan, seperti gabungan indikator trend atau sokongan rintangan.

  3. Risiko penambahan simpanan piramid: Strategi menyokong maksimum 5 kali penambahan simpanan, jika pasaran tiba-tiba berbalik, ia boleh menyebabkan kerugian besar yang berkumpul. Ia disyorkan untuk mengurangkan jumlah penambahan simpanan atau menetapkan syarat penambahan simpanan yang lebih ketat mengikut kemampuan risiko individu.

  4. Ketergantungan keadaan pasaran: strategi ini berfungsi dengan baik di pasaran yang jelas bergolak atau di hujung trend, tetapi mungkin sering mencetuskan isyarat yang salah di pasaran yang sedang tren. Anda harus mempertimbangkan untuk menambah penapis trend dan hanya menggunakan strategi ini dalam keadaan pasaran yang sesuai.

  5. Sensitiviti parameter: Perubahan kecil dalam parameter ATR boleh mempengaruhi prestasi strategi dengan ketara, memerlukan pengoptimuman dan pengukuran parameter yang komprehensif untuk pasaran dan tempoh masa yang berbeza.

Arah pengoptimuman strategi

  1. Menambah mekanisme penapisan trend: boleh digabungkan dengan penunjuk seperti purata bergerak atau ADX, hanya apabila arah trend selaras dengan isyarat pembalikan, meningkatkan kadar kemenangan. Untuk pelaksanaan tertentu, logik berikut boleh ditambah:
// 趋势过滤器示例
ema200 = ta.ema(close, 200)
adx = ta.adx(14)
inUptrend = close > ema200 and adx > 25
inDowntrend = close < ema200 and adx > 25
  1. Mekanisme penutupan pintar: meningkatkan penutupan awal berasaskan ATR untuk strategi, memberikan perlindungan sebelum penghentian penjejakan diaktifkan. Contohnya:
// 初始止损示例
initialStopLoss = strategy.position_size > 0 ? longEntry - 2 * atr : 
                 strategy.position_size < 0 ? shortEntry + 2 * atr : na
  1. Menambah penapis masa dagangan: beberapa pasaran mungkin terlalu besar atau terlalu kecil pada masa tertentu, mempengaruhi prestasi strategi. Penapis masa dagangan boleh ditambah, hanya berdagang pada masa yang terbaik.

  2. Optimumkan syarat pengesahan pembalikan: boleh dipertimbangkan untuk menggabungkan metrik volum atau momentum untuk menguatkan kebolehpercayaan isyarat pembalikan. Isyarat pembalikan idealnya harus disertai dengan peningkatan jumlah pembalikan atau penyingkiran metrik momentum.

  3. Parameter penyesuaian dinamik: Mekanisme boleh direka untuk menyesuaikan parameter ATR secara automatik berdasarkan keadaan pasaran untuk menyesuaikan diri dengan tahap pasaran yang berbeza. Sebagai contoh, untuk meningkatkan jarak pengesanan semasa turun naik tinggi dan mengurangkan jarak pengesanan semasa turun naik rendah.

  4. Meningkatkan sasaran keuntungan: Selain menjejaki stop loss, anda boleh menetapkan keuntungan separa berdasarkan tahap rintangan sokongan atau Fibonacci retracement untuk mencapai keuntungan separa yang dikunci pada harga penting.

  5. Pengurusan risiko yang dioptimumkan: Mengehadkan risiko perdagangan tunggal dalam peratusan tetap akaun, dan bukannya menggunakan hak milik 50% secara tetap, boleh dicapai dengan cara berikut:

// 动态仓位大小计算
riskPerTrade = 1 // 风险1%账户
posSize = (strategy.equity * riskPerTrade / 100) / (atr * 2)

ringkaskan

Strategi perdagangan kuantitatif pola pembalikan tiga berdasarkan ATR dinamik yang mengesan halangan adalah sistem perdagangan pembalikan jangka pendek yang direka dengan baik untuk menangkap titik perubahan pasaran dengan mengenal pasti tiga pola pembalikan berturut-turut yang diikuti oleh garis arah yang sama. Ciri utamanya adalah penggunaan mekanisme penutupan pembalikan dinamik berdasarkan ATR, yang membolehkan strategi menyesuaikan diri dengan ciri-ciri turun naik dalam keadaan pasaran yang berbeza, dan mengunci keuntungan yang telah dicapai dalam masa yang tepat sambil mengekalkan ruang keuntungan yang mencukupi.

Strategi ini sangat sesuai untuk digunakan dalam pasaran yang bergolak dan persekitaran pasaran yang bergelombang, seperti cryptocurrency, emas dan pasaran forex. Dengan menambah cadangan pengoptimuman yang dikemukakan dalam artikel ini, seperti penapisan trend, hentian pintar dan penyesuaian parameter dinamik, peniaga dapat meningkatkan lagi kestabilan dan keuntungan strategi.

Perlu diperhatikan bahawa walaupun strategi ini mempunyai keupayaan untuk menyesuaikan diri dengan perubahan pasaran secara automatik, masih memerlukan parameter yang dioptimumkan dan disesuaikan oleh peniaga mengikut ciri-ciri pasaran tertentu dan pilihan risiko peribadi. Sebelum penerapan di lapangan, disarankan untuk melakukan pengesanan sejarah yang mencukupi dan perdagangan simulasi untuk mengesahkan bagaimana strategi ini berfungsi dalam keadaan pasaran yang berbeza.

Kod sumber strategi
/*backtest
start: 2024-05-19 00:00:00
end: 2025-04-11 00:00:00
period: 5d
basePeriod: 5d
exchanges: [{"eid":"Futures_Binance","currency":"ETH_USDC"}]
*/

//@version=5
// ========================================================================
// 📌 CMA Technologies – 3-Bar Reversal Detection Bot (ATR Trailing TP)
// 🌐 Developed by CMA Technologies | Visit: cmatech.co
// 🔄 Short-term reversal entry with dynamic ATR-based trailing TP
// 🔍 Strategy by @CMATechnologies
// ========================================================================

strategy("CMA Technologies – 3-Bar Reversal Detection Bot", overlay=true, default_qty_type=strategy.percent_of_equity, default_qty_value=1, pyramiding=5, commission_type=strategy.commission.percent, commission_value=0.05)

// === INPUTS ===
minBodyPct     = input.float(3, title="Minimum Body Size (%)")
atrLen         = input.int(14, title="ATR Length")
trailStartATR  = input.float(1.5, title="Start Trailing After (x ATR)")
trailOffsetATR = input.float(1.0, title="Trailing Offset (x ATR)")

// === ATR ===
atr = ta.atr(atrLen)

// === FUNCTION ===
isBearish(closeVal, openVal) =>
    closeVal < openVal

isBullish(closeVal, openVal) =>
    closeVal > openVal

bodyPct(closeVal, openVal) =>
    math.abs(closeVal - openVal) / openVal * 100

// === CONDITIONS ===
bullishReversal = isBearish(close[3], open[3]) and isBearish(close[2], open[2]) and isBearish(close[1], open[1]) and isBullish(close, open) and bodyPct(close, open) > minBodyPct

bearishReversal = isBullish(close[3], open[3]) and isBullish(close[2], open[2]) and isBullish(close[1], open[1]) and isBearish(close, open) and bodyPct(close, open) > minBodyPct

// === ENTRY ===
if (bullishReversal)// and strategy.position_size == 0)
    strategy.entry("3Bar Long", strategy.long)

if (bearishReversal)// and strategy.position_size == 0)
    strategy.entry("3Bar Short", strategy.short)

// === ATR-BASED TRAILING TP ===
longEntry  = strategy.opentrades.entry_price(0)
shortEntry = strategy.opentrades.entry_price(0)

maxHigh = ta.highest(close, 20)
minLow  = ta.lowest(close, 20)

startTrailLong  = longEntry + trailStartATR * atr
startTrailShort = shortEntry - trailStartATR * atr

longTrailExit   = close < (maxHigh - trailOffsetATR * atr) and close > startTrailLong
shortTrailExit  = close > (minLow + trailOffsetATR * atr) and close < startTrailShort

if (strategy.position_size > 0 and longTrailExit)
    strategy.close("3Bar Long", comment="ATR Trailing TP Hit")

if (strategy.position_size < 0 and shortTrailExit)
    strategy.close("3Bar Short", comment="ATR Trailing TP Hit")

// === PLOTS ===
plotshape(bullishReversal, title="3-Bar Bull Reversal", location=location.belowbar, color=color.green, style=shape.triangleup, size=size.tiny)
plotshape(bearishReversal, title="3-Bar Bear Reversal", location=location.abovebar, color=color.red, style=shape.triangledown, size=size.tiny)