Strategi Penjejakan Momentum Mampatan Kemeruapan Penjejakan: Pelaksanaan Kuantitatif Penunjuk Squeeze TTM

动量指标 波动率 布林带 肯特纳通道 线性回归 移动平均线 量化交易 追踪止损 MA BB KC TTM SMA ATR
Tarikh penciptaan: 2025-06-19 13:42:37 Akhirnya diubah suai: 2025-06-19 13:42:37
Salin: 5 Bilangan klik: 368
2
fokus pada
319
Pengikut

Strategi Penjejakan Momentum Mampatan Kemeruapan Penjejakan: Pelaksanaan Kuantitatif Penunjuk Squeeze TTM Strategi Penjejakan Momentum Mampatan Kemeruapan Penjejakan: Pelaksanaan Kuantitatif Penunjuk Squeeze TTM

Gambaran keseluruhan

Strategi penekanan pergerakan pergerakan pergerakan adalah sistem perdagangan kuantitatif berdasarkan TTM penekanan penunjuk yang direka khusus untuk menangkap pergerakan pergerakan yang kuat selepas penekanan kadar pergerakan. Strategi ini dengan cerdik menggabungkan penekanan kadar pergerakan (Burin Belt terletak di dalam saluran Kenten) dengan pengesahan dinamik untuk membina sistem perdagangan yang hanya melakukan lebih banyak.

Prinsip Strategi

Prinsip utama strategi ini adalah berdasarkan kepada sifat kitaran turun naik pasaran, iaitu “pengurangan kadar turun naik mesti disertai dengan pengembangan kadar turun naik”. Secara khusus, strategi ini bekerja bersama melalui beberapa komponen utama:

  1. Penghakiman keadaan penekanan

    • Blink band ((BB) yang dikira 20 kitaran, parameter 2.0
    • KC yang dikira 20 kitaran, parameter 1.5, menggunakan amplitud sebenar (ATR)
    • Keadaan yang ditakrifkan sebagai “berbuka squeeze” apabila seluruh Brin Belt terletak sepenuhnya di dalam saluran Kentner
  2. Peta tiang tenaga

    • Hitung harga penutupan 20 kitaran SMA dan pertengahan dalam julat tertinggi dan terendah terkini
    • Pengukuran harga yang menyimpang dari purata campuran
    • Menggunakan 20 pusingan regresi linear untuk nilai penyimpangan ini, menghasilkan peta tiang
    • Menggunakan warna yang berbeza mengikut perubahan momentum: hijau / hijau cerah untuk trend naik, merah / merah jambu untuk trend turun
  3. Arahan visual

    • Titik Biru Tentera Laut = Squeeze On (siap untuk meletup)
    • Titik biru keluli = Squeeze baru sahaja dibebaskan
    • Titik biru = Netral (tidak tertekan)
  4. Logik Transaksi

    • Syarat kemasukan: Tiga tiang berturut-turut membentuk “membuka tekanan” ((iaitu tiga titik biru tentera laut berturut-turut)
    • Keadaan keluar: Harga jatuh di bawah purata bergerak sederhana 21 kitaran
    • Hanya melakukan lebih banyak, hanya menjalankan satu transaksi pada satu masa, tidak kosong

Analisis kod menunjukkan bahawa strategi dijalankan mengikut logik ini dengan ketat, dan memberikan parameter yang boleh dikonfigurasi oleh pengguna, termasuk panjang dan kelipatan BB dan KC, pilihan untuk menggunakan lebar gelombang sebenar, dan tetapan julat masa tetingkap perdagangan.

Kelebihan Strategik

Setelah mengkaji kod dengan mendalam, strategi ini menunjukkan beberapa kelebihan yang ketara:

  1. Menangkap Permulaan Trend BesarStrategi ini memberi tumpuan kepada menangkap titik-titik kemungkinan yang tinggi ini, yang membantu membina kedudukan di awal trend dan memaksimumkan ruang untuk keuntungan.

  2. Menapis isyarat berkualiti rendahKeperluan untuk tiga tiang berturut-turut dalam keadaan yang diekskresikan secara berkesan menyaring fenomena “penekanan palsu” yang singkat, mengurangkan isyarat palsu dan meningkatkan kualiti transaksi.

  3. Kematian dinamik pintar: Menggunakan purata bergerak 21 kitaran sebagai penghentian pengesanan, kedua-dua membolehkan trend berkembang sepenuhnya, dan boleh keluar tepat pada masanya ketika momentum merosot, mengimbangi potensi keuntungan dan kawalan risiko.

  4. Intuisi visual yang kuatStrategi mengekalkan semua elemen visual penunjuk pencetakan TTM asal, termasuk grafik tiang momentum dan titik pencetakan yang dikodkan dengan warna, yang membolehkan peniaga memahami secara intuitif apa yang mencetuskan setiap perdagangan.

  5. Kebolehan beradaptasiReka bentuk strategi boleh digunakan dalam mana-mana tempoh masa dari 1 minit hingga garis pusingan, sesuai untuk pelbagai jenis perdagangan, dengan kebolehgunaan yang sangat kuat.

  6. Parameter boleh disesuaikan: menyediakan tetapan parameter yang fleksibel, yang membolehkan peniaga menyesuaikan sensitiviti Brin Belt dan Kentner Channel mengikut ciri-ciri turun naik spesies tertentu.

  7. Fungsi pengesanan bawaanStrategi ini mempunyai sokongan feedback yang terbina dalam, termasuk simulasi komisen dan slippage, yang membolehkan anda menilai prestasi strategi dengan lebih realistik.

Risiko Strategik

Walaupun strategi ini direka dengan baik, terdapat risiko yang berpotensi:

  1. Risiko penembusan palsuWalaupun melalui penapisan tiga tiang, pasaran masih boleh mengalami penembusan palsu, menyebabkan harga jatuh kembali ke bawah purata bergerak dengan cepat selepas penembusan, mencetuskan hentian. Penyelesaian adalah dengan mempertimbangkan untuk menambah petunjuk pengesahan tambahan, seperti pengesahan jumlah dagangan atau penapis trend.

  2. Perkembangan pasaran yang burukDalam keadaan pasaran yang bergoyang di sepanjang masa, strategi mungkin sering masuk dan keluar, menyebabkan kerugian kecil berturut-turut. Ia boleh diselesaikan dengan menambahkan kriteria penilaian trend, menghentikan perdagangan dalam pasaran yang jelas bergoyang.

  3. Penangguhan kemerosotan: 21 Purata bergerak kitaran mungkin bertindak balas lebih lambat dalam pasaran yang berbalik dengan cepat, menyebabkan penarikan diri meluas. Anda boleh mempertimbangkan untuk menyesuaikan purata bergerak untuk kitaran yang lebih pendek dalam persekitaran yang bergelombang tinggi atau menambah komponen penyesuaian kadar turun naik.

  4. Risiko penurunan jangka panjangSebagai satu strategi yang lebih banyak, ia akan menghadapi cabaran dalam pasaran beruang jangka panjang. Anda boleh mempertimbangkan untuk menambah penapis trend pasaran atau membangunkan strategi shorting yang disertakan untuk melindungi risiko ini.

  5. Kepekaan ParameterTetapan parameter untuk Brin Belt dan Kentner Channel mempunyai kesan yang ketara terhadap prestasi strategi, parameter yang tidak sesuai boleh menyebabkan terlalu banyak isyarat atau kehilangan peluang penting. Ia disyorkan untuk mengoptimumkan tetapan parameter dengan mengkaji semula keadaan pasaran yang berbeza.

  6. Risiko kecairanSeperti yang dinyatakan dalam nota kod, penarikan balik yang lebih besar mungkin berlaku pada varieti dengan jumlah dagangan yang sangat rendah atau pada jangka masa yang kurang cair. Strategi ini harus dielakkan untuk digunakan di pasaran yang kurang cair.

Arah pengoptimuman strategi

Berdasarkan analisis kod, berikut adalah arah yang boleh dioptimumkan untuk strategi ini:

  1. Penambahan boleh disahkanStrategi semasa hanya membuat keputusan berdasarkan harga dan kadar turun naik, tanpa mempertimbangkan faktor jumlah transaksi. Ia disyorkan untuk meningkatkan syarat pengesahan jumlah transaksi, memastikan bahawa penembusan berlaku dengan sokongan jumlah transaksi yang lebih besar, meningkatkan keberkesanan penembusan.

  2. Mekanisme parameter penyesuaianParameter yang ditetapkan pada masa ini boleh dipertimbangkan untuk mewujudkan sistem parameter penyesuaian berdasarkan kadar turun naik sejarah, yang membolehkan strategi menyesuaikan secara automatik kelipatan jalur Bryn dan Kentner mengikut keadaan pasaran, meningkatkan penyesuaian strategi dalam persekitaran turun naik yang berbeza.

  3. Analisis struktur pasaran bersepaduDengan menggunakan algoritma untuk mengenal pasti struktur pasaran, seperti tahap sokongan / rintangan, garis trend atau tahap harga penting, isyarat penekanan berhampiran titik struktur utama mungkin mempunyai kadar kejayaan yang lebih tinggi.

  4. Analisis pelbagai kerangka masaMekanisme pengesahan pelbagai bingkai masa yang memerlukan isyarat masuk untuk memenuhi kedua-dua bingkai masa yang lebih panjang dan lebih pendek, yang dapat meningkatkan kualiti isyarat dan mengurangkan pelanggaran palsu.

  5. Pengoptimuman pengurusan risikoStrategi semasa menggunakan purata bergerak tetap sebagai hentian, boleh mempertimbangkan hentian dinamik berdasarkan ATR atau penyesuaian saiz kedudukan berdasarkan kadar turun naik, meningkatkan kadar pulangan yang disesuaikan dengan risiko.

  6. Tambah logik kosongPertimbangan untuk merancang logik shorting yang saling melengkapi, supaya strategi dapat berfungsi sama baiknya dalam pasaran beruang, meningkatkan kesesuaian dalam keseluruhan kitaran pasaran.

  7. Penapis bermusim dan masaStrategi menganalisis prestasi pada tempoh masa yang berlainan pada musim, bulan, atau hari yang berbeza, dan mungkin mendapati bahawa tempoh masa tertentu lebih baik, dengan menambahkan penapis masa untuk meningkatkan prestasi keseluruhan.

ringkaskan

Strategi pelacakan pergerakan penekanan kadar pergerakan adalah sistem perdagangan kuantitatif yang elegan dan praktikal yang berjaya mengubah indikator penekanan TTM klasik menjadi kerangka strategi yang boleh dikesan. Kelebihan utamanya adalah menangkap trend yang meletus selepas penekanan kadar pergerakan, dan melindungi keuntungan dengan mengesan hentian kerugian dengan rata-rata bergerak.

Walaupun terdapat beberapa risiko yang berpotensi, seperti kegagalan prestasi pasaran palsu dan goyah, ini dapat dikurangkan dengan baik melalui arah pengoptimuman yang disyorkan. Khususnya, langkah-langkah pengoptimuman tambahan seperti pengesahan jumlah transaksi, mekanisme parameter penyesuaian diri dan analisis jangka masa berbilang, diharapkan dapat meningkatkan kehandalan dan kebolehsuaian strategi secara signifikan.

Strategi ini menyediakan titik permulaan yang kukuh bagi peniaga yang mencari untuk menangkap pergerakan pasaran, yang boleh digunakan secara langsung atau sebagai komponen asas untuk sistem yang lebih kompleks. Yang paling penting, falsafah reka bentuk strategi ini sesuai dengan undang-undang asas pasaran: pengurangan kadar turun naik akhirnya akan menyebabkan kenaikan kadar turun naik, dan mengenal pasti dan memanfaatkan undang-undang ini adalah salah satu kunci untuk perdagangan yang berjaya.

Kod sumber strategi
/*backtest
start: 2024-06-19 00:00:00
end: 2025-06-17 08:00:00
period: 3d
basePeriod: 3d
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=5
strategy("NA GPT - TTM Squeeze Strategy", overlay=false, commission_type=strategy.commission.percent, commission_value=0.01, slippage=3)

// === Inputs ===
length       = input.int(20,  title="BB & KC Length")
multBB       = input.float(2, title="BB MultFactor")
lengthKC     = input.int(20,  title="KC Length")
multKC       = input.float(1.5, title="KC MultFactor")
useTrueRange = input.bool(true, title="Use TrueRange (KC)")

// === Core data ===
source = close

// --- Bollinger Bands ---
basis   = ta.sma(source, length)
dev     = multBB * ta.stdev(source, length)
upperBB = basis + dev
lowerBB = basis - dev

// --- Keltner Channels ---
ma          = ta.sma(source, lengthKC)
kcRange     = useTrueRange ? ta.tr : (high - low)
kcRangeAvg  = ta.sma(kcRange, lengthKC)
upperKC     = ma + kcRangeAvg * multKC
lowerKC     = ma - kcRangeAvg * multKC

// --- Squeeze states ---
sqzOn  = (lowerBB > lowerKC) and (upperBB < upperKC)
sqzOff = (lowerBB < lowerKC) and (upperBB > upperKC)
noSqz  = not sqzOn and not sqzOff

// --- Momentum histogram (same as indicator) ---
midpoint = (ta.highest(high, lengthKC) + ta.lowest(low, lengthKC)) / 2
average  = (midpoint + ta.sma(close, lengthKC)) / 2
val      = ta.linreg(source - average, lengthKC, 0)

// Histogram colours
bcolor = val > 0 ?
         (val > nz(val[1]) ? color.lime : color.green) :
         (val < nz(val[1]) ? color.red  : color.maroon)

// Zero-line colour
scolor = noSqz ? color.new(color.blue, 0) :
         sqzOn ? color.new(#031753, 0)   :
                  color.new(#78797c, 0)

// === Plotting (visuals preserved) ===
plot(val, title="Momentum", style=plot.style_histogram, linewidth=4, color=bcolor)
plot(0,   title="Zero Line", style=plot.style_line,      linewidth=2, color=scolor)

// --- Blue-dot theme ---
dotColor = sqzOn  ? color.new(#000080, 0) :   // Navy Blue
           sqzOff ? color.new(#7f858a, 0) :   // Steel Blue
                     color.new(#87CEEB, 0)    // Sky Blue
plotshape(true, title="Squeeze Dot", location=location.bottom, style=shape.circle, color=dotColor, size=size.tiny)

// === Trading logic ===

// 3 consecutive “blue-dot” squeeze bars
threeSqz = sqzOn and sqzOn[1] and sqzOn[2]

// 21-period SMA
sma21 = ta.sma(close, 21)

// Entry: go long when threeSqz appears inside window
if strategy.position_size == 0 and threeSqz
    strategy.entry("Long", strategy.long)

// Exit: close long when price crosses below SMA-21
if strategy.position_size > 0 and ta.crossunder(close, sma21)
    strategy.close("Long")