
Strategi kuantitatif salib pergerakan berganda adalah sistem salib yang didorong oleh momentum yang direka khusus untuk pedagang garis pendek. Inti strategi ini adalah untuk menangkap perubahan pergerakan jangka pendek di pasaran menggunakan salib hubungan antara penapis purata bergerak dan garis isyarat cepat. Strategi ini membina garis isyarat tersuai yang dipanggil “Scalping Line” yang dihasilkan oleh pengiraan perbezaan antara purata bergerak berganda dan garis isyarat jangka masa yang lebih pendek.
Logik teras strategi ini dibina di atas beberapa komponen pengiraan utama:
Penapis trend utamaStrategi pertama adalah mengira purata bergerak berliku ganda (dengan kitaran lalai 100). Pengurusan berliku ganda ini berkesan mengurangkan bunyi harga dan menyediakan kerangka asas yang lebih kukuh untuk isyarat perdagangan garis pendek.
Penapis peratusUntuk mengelakkan isyarat palsu, strategi memperkenalkan parameter penapisan peratusan yang boleh disesuaikan. Sistem penapis ini menyesuaikan “sensitiviti” kepada harga yang menyimpang dari purata bergerak, membantu menapis turun naik harga yang tidak penting.
Pengiraan talian isyarat: Menggunakan purata bergerak sederhana dengan kitaran yang lebih pendek ((default 7) untuk memberikan tindak balas yang lebih cepat terhadap pergerakan harga terkini.
Pengiraan Scalping Line (SLI): Garis isyarat teras ditakrifkan sebagai perbezaan antara garis isyarat cepat dan rata-rata bergerak lancar. Apabila SLI melintasi titik sifar, menunjukkan perubahan momentum yang berpotensi:
Kawalan arah perdaganganStrategi boleh dikonfigurasikan sebagai hanya melakukan lebih, hanya melakukan lebih atau perdagangan dua hala untuk menyesuaikan gaya perdagangan yang berbeza.
Pilihan pembalikan isyarat: Secara lalai, apabila SLI melintasi garisan sifar ke bawah, ia akan mencetuskan isyarat multihead, dan apabila ia melintasi garisan sifar ke atas, ia akan mencetuskan isyarat kosong. Tetapi tetapan ini boleh ditukarkan, yang membolehkan tafsiran alternatif isyarat momentum mengikut keadaan pasaran yang berbeza.
Penapis tetingkap masaUntuk peniaga dalam hari, penapis masa boleh diaktifkan untuk mengehadkan isyarat ke dalam tempoh perdagangan tertentu (contohnya 9 pagi hingga 4 petang), yang sangat berguna untuk aset yang mempunyai turun naik dalam hari yang kuat.
Setelah mengkaji kod secara mendalam, ia dapat disimpulkan bahawa strategi ini mempunyai kelebihan yang ketara:
Sistem isyarat yang ringkas dan jelasStrategi menggunakan garis silang sifar sebagai isyarat utama, memberikan titik masuk yang jelas dan intuitif kepada peniaga, mengurangkan ambiguiti tafsiran.
Kustomisasi yang tinggiDari kitaran purata bergerak, penapisan peratusan hingga penapisan arah dan masa isyarat, strategi menyediakan pelbagai parameter yang boleh disesuaikan, yang membolehkan peniaga mengoptimumkannya mengikut pasaran dan gaya mereka sendiri.
Sangat boleh menyesuaikan diriDengan menggunakan penapis peratusan dan parameter kelancaran yang boleh disesuaikan, strategi dapat menyesuaikan diri dengan keadaan pasaran yang berbeza dan tetap berkesan dalam persekitaran yang bergelombang tinggi dan rendah.
Maklum balas visualStrategi menyediakan petunjuk visual yang intuitif, termasuk rujukan garis sifar, pengisian carta tiang dan penanda isyarat, yang membolehkan peniaga dengan mudah mengenal pasti peluang perdagangan yang berpotensi.
Kebolehgunaan pelbagai pasaranLogik strategi yang mudah dan berkesan boleh digunakan dalam pelbagai pasaran seperti saham, forex, cryptocurrency dan niaga hadapan, terutama untuk pasaran yang mempunyai turun naik dalam masa sehari.
Kerangka masa yang fleksibelWalaupun ia direka untuk perdagangan garis pendek pada carta 1 minit hingga 15 minit, strategi ini boleh disesuaikan dengan perdagangan goyang pada bingkai masa yang lebih tinggi dengan menyesuaikan parameternya.
Walaupun terdapat banyak kelebihan, strategi ini mempunyai beberapa risiko yang berpotensi:
Kekurangan pengurusan risiko terbina dalamStrategi ini memberi tumpuan kepada isyarat masuk, tanpa peraturan pengurusan kedudukan, hentikan dan hentikan yang terbina dalam. Pedagang perlu meletakkan peraturan ini mengikut gaya pengurusan risiko mereka sendiri.
Kepekaan ParameterPrestasi strategi sangat bergantung pada parameter yang ditetapkan, parameter yang tidak betul boleh menyebabkan perdagangan berlebihan atau kehilangan peluang. Perlu mengoptimumkan parameter untuk keadaan pasaran tertentu.
Risiko isyarat palsuDalam pasaran yang bergolak atau dalam persekitaran yang tidak menentu, strategi ini mungkin menghasilkan lebih banyak isyarat palsu yang menyebabkan perdagangan yang tidak perlu dan potensi kerugian.
Masalah ketinggalan zamanWalaupun menggunakan garis isyarat yang lebih pendek, purata bergerak secara semula jadi mempunyai keterbelakangan, dan mungkin kurang responsif pada titik perubahan pasaran yang cepat.
Kebergantungan satu indikatorStrategi yang hanya bergantung kepada Scalping Line untuk membuat keputusan, kekurangan sokongan dari petunjuk pengesahan lain, boleh meningkatkan risiko isyarat salah.
Kaedah-kaedah untuk menangani risiko-risiko ini termasuk:
Berdasarkan analisis mendalam kod, strategi ini mempunyai beberapa arah pengoptimuman yang berpotensi:
Pengurusan risiko bersepadu: Mengintegrasikan logik stop loss dan stop loss secara langsung ke dalam strategi, anda boleh menetapkan kedudukan stop loss berdasarkan ATR (Rang sebenar rata-rata) atau peratusan tetap, sambil menetapkan nisbah risiko-pengembalian untuk menentukan sasaran keuntungan.
Analisis pelbagai kerangka masa: Pengenalan pengesahan trend pada bingkai masa yang lebih tinggi, perdagangan hanya dalam arah trend utama, dapat mengurangkan risiko perdagangan berlawanan dengan ketara.
Kebolehan beradaptasi: Tambah penyesuaian parameter dinamik berdasarkan ATR atau penunjuk yang serupa, membolehkan strategi menyesuaikan sensitiviti isyarat secara automatik mengikut turun naik pasaran semasa.
Penapis tambahan: Mengintegrasikan jumlah lalu lintas, kekuatan relatif atau petunjuk momentum lain sebagai alat pengesahan, hanya berdagang apabila beberapa petunjuk sesuai, sehingga meningkatkan kualiti isyarat.
Pengoptimuman Pembelajaran Mesin: Menggunakan teknologi pembelajaran mesin untuk memilih kombinasi parameter yang terbaik secara dinamik, menyesuaikan parameter strategi secara automatik mengikut keadaan pasaran yang berbeza.
Pengoptimuman kemasukanTidak hanya mempertimbangkan penyambungan garisan sifar, tetapi juga mempertimbangkan corak isyarat yang lebih kompleks seperti pembalikan nilai maksimum dan mod penyemprotan / konvergen untuk meningkatkan ketepatan masuk.
Pengoptimuman ini dapat meningkatkan kebolehpercayaan strategi, mengurangkan isyarat palsu, dan meningkatkan prestasi keseluruhan dalam pelbagai keadaan pasaran. Khususnya, integrasi pengurusan risiko sangat penting untuk melindungi modal dan mencapai keuntungan jangka panjang.
Strategi kuantitatif salib peluru berpindah berganda menyediakan kaedah perdagangan garis pendek yang tepat dan fleksibel, yang sangat sesuai untuk peniaga harian dan peniaga garis pendek. Dengan menggabungkan purata bergerak peluru berpindah berganda, penapisan adaptif, dan pilihan isyarat yang fleksibel, ia membantu peniaga mengenal pasti pergerakan pergerakan jangka pendek dengan jelas dan yakin.
Kelebihan utama strategi ini adalah kesederhanaan dan kebolehpasaran yang menjadikannya alat yang kuat dalam kotak alat perdagangan garis pendek. Walau bagaimanapun, untuk mencapai kesan terbaik, peniaga harus mempertimbangkan untuk menambah peraturan pengurusan risiko yang sesuai, melakukan pengesanan balik yang menyeluruh, dan menyesuaikan parameter mengikut keadaan pasaran tertentu.
Dengan cadangan pengoptimuman di atas, khususnya mengintegrasikan pengurusan risiko dan pengesahan pelbagai indikator, strategi ini berpotensi menjadi sistem perdagangan yang lebih komprehensif dan lebih mantap, yang bukan sahaja dapat mengenal pasti peluang perdagangan yang berpotensi, tetapi juga dapat melindungi modal dan mencapai kejayaan yang berterusan dalam pelbagai persekitaran pasaran.
/*backtest
start: 2024-08-22 00:00:00
end: 2025-08-19 08:00:00
period: 3d
basePeriod: 3d
exchanges: [{"eid":"Binance","currency":"ETH_USDT","balance":500000}]
*/
// This source code is subject to the terms of the Mozilla Public License 2.0 at https://mozilla.org/MPL/2.0/
// © nirnaykhatri - Strategy Version (Based on Scalping Line Indicatory By KivancOzbilgic)
//@version=6
strategy("Scalping Line Strategy", overlay=false)
// ═══════════════════════════════════════════════════════════════════════════════
// 📊 INPUT PARAMETERS
// ═══════════════════════════════════════════════════════════════════════════════
// === Core Indicator Settings ===
src = input.source(close, title="Source", group="📈 Core Settings")
percent = input.float(1.0, "Percent Filter", step=0.1, minval=0, group="📈 Core Settings", tooltip="Percentage threshold for signal filtering")
mainperiod = input.int(100, "Main Period", minval=1, group="📈 Core Settings", tooltip="Main moving average period")
signalperiod = input.int(7, "Signal Period", minval=1, group="📈 Core Settings", tooltip="Signal line moving average period")
// === Strategy Configuration ===
tradeDirection = input.string("Both", "Trade Direction", options=["Long Only", "Short Only", "Both"], group="🎯 Strategy Settings")
flipSignals = input.bool(false, "Flip Entry Signals", group="🎯 Strategy Settings", tooltip="When enabled: Long on cross above zero, Short on cross below zero. When disabled: Long on cross below zero, Short on cross above zero")
enableLongs = tradeDirection == "Long Only" or tradeDirection == "Both"
enableShorts = tradeDirection == "Short Only" or tradeDirection == "Both"
// === Signal Filtering ===
enableTimeFilter = input.bool(false, "Enable Time Filter", group="🕒 Signal Filters")
startHour = input.int(9, "Start Hour", minval=0, maxval=23, group="🕒 Signal Filters")
endHour = input.int(16, "End Hour", minval=0, maxval=23, group="🕒 Signal Filters")
// ═══════════════════════════════════════════════════════════════════════════════
// 🔧 CORE CALCULATIONS (Original Indicator Logic)
// ═══════════════════════════════════════════════════════════════════════════════
// Calculate the main moving average with double smoothing
MA = ta.sma(ta.sma(src, math.ceil(mainperiod / 2)), math.floor(mainperiod / 2) + 1)
// Apply percentage-based signal smoothing
ssMA = MA > close + MA * percent / 100 ? MA : MA < close - MA * percent / 100 ? MA : close
// Calculate signal line
signalline = ta.sma(close, signalperiod)
// Calculate the Scalping Line Indicator (core signal)
ScalpLine = signalline - ssMA
// ═══════════════════════════════════════════════════════════════════════════════
// 📈 ORIGINAL INDICATOR VISUALS (Preserved)
// ═══════════════════════════════════════════════════════════════════════════════
// Plot the original indicator
k1 = plot(ScalpLine, "SLI", color.maroon, 2)
k2 = plot(0, "", color=color.gray)
// Original color logic and fill
color1 = ScalpLine >= 0 ? color.green : color.red
fill(k1, k2, color=color.new(color1, 80))
// ═══════════════════════════════════════════════════════════════════════════════
// 🎯 TRADING LOGIC & SIGNAL GENERATION
// ═══════════════════════════════════════════════════════════════════════════════
// Time filter logic
inTimeWindow = not enableTimeFilter or (hour >= startHour and hour <= endHour)
// Signal generation with crossover detection
longSignal = (flipSignals ? ta.crossover(ScalpLine, 0) : ta.crossunder(ScalpLine, 0)) and enableLongs and inTimeWindow
shortSignal = (flipSignals ? ta.crossunder(ScalpLine, 0) : ta.crossover(ScalpLine, 0)) and enableShorts and inTimeWindow
// ═══════════════════════════════════════════════════════════════════════════════
// 🚀 STRATEGY EXECUTION (Following BB-Strategy Pattern)
// ═══════════════════════════════════════════════════════════════════════════════
// Simple strategy entries following BB-Strategy pattern
if (longSignal)
strategy.entry("Long", strategy.long, comment="Long Entry")
else
strategy.cancel(id="Long")
if (shortSignal)
strategy.entry("Short", strategy.short, comment="Short Entry")
else
strategy.cancel(id="Short")
// ═══════════════════════════════════════════════════════════════════════════════
// 🎨 VISUAL INDICATORS (Simple and Clean)
// ═══════════════════════════════════════════════════════════════════════════════
// Plot entry signals
plotshape(longSignal, title="Long Entry", style=shape.triangleup, location=location.belowbar, color=color.lime, size=size.small)
plotshape(shortSignal, title="Short Entry", style=shape.triangledown, location=location.abovebar, color=color.red, size=size.small)
// Zero line for reference
hline(0, title="Zero Line", color=color.gray, linestyle=hline.style_solid)