
Strategi perdagangan kuantitatif rata-rata bergerak bergerak yang dinamis adalah sistem perdagangan yang menggabungkan indikator supertrend dan rata-rata bergerak, yang digunakan untuk perdagangan pasaran forex dalam jangka masa 1 jam hingga 4 jam. Strategi ini menggunakan persilangan harga dan rata-rata bergerak sebagai isyarat awal, dan kemudian melakukan pengesahan trend melalui indikator supertrend, untuk membina sistem masuk, henti dan berhenti yang lengkap.
Prinsip teras strategi ini adalah berdasarkan sistem pengesanan trend yang disahkan secara berganda, yang terdiri daripada beberapa komponen utama:
Sinyal silang purata bergerakStrategi menggunakan purata bergerak sederhana (SMA) dengan 20 kitaran ((10-50 boleh disesuaikan) sebagai garis asas. Harga yang melintasi purata bergerak ini dianggap sebagai isyarat perubahan trend yang berpotensi. Sistem ini menyokong dua mod persilangan: persilangan harga penutupan (lebih konservatif) atau persilangan titik rendah tinggi (lebih radikal).
Penunjuk super kuasa disahkan: Menggunakan indikator superpower dengan faktor 2.8 (boleh disesuaikan antara 2.0-3.5) dan 10 kitaran (boleh disesuaikan antara 5-20) sebagai alat pengesahan arah trend.
Logik input:
Sistem pengurusan risiko:
Mekanisme pengesahan bergandaSistem pengesahan dua kali yang menggabungkan purata bergerak dan penunjuk superpower secara berkesan mengurangkan isyarat palsu dan meningkatkan ketepatan perdagangan. Dalam pasaran yang jelas trend, pengesahan ganda ini dapat menyaring isyarat yang menyesatkan dalam keadaan gegaran.
Kebolehan menyesuaikan diriParameter strategi mempunyai kebolehsuaian yang tinggi, termasuk kitaran purata bergerak, kali ganda penunjuk superpower dan kitaran ATR. Ini membolehkan strategi melakukan penyesuaian optimum mengikut keadaan dan turun naik pasaran yang berbeza. Terutama, julat penyesuaian 2.5 hingga 3.2 untuk kali ganda penunjuk superpower dapat disesuaikan dengan keadaan pasaran yang berbeza.
Pengurusan risiko yang baik: Sistem penangguhan kerugian dinamik berasaskan ATR terbina dalam, memastikan risiko setiap perdagangan dikawal dalam julat yang ditetapkan. Tetapan nisbah ganjaran risiko tetap: 3: 1 membantu membina keuntungan jangka panjang.
Kebolehan beradaptasiStrategi: Mengubah objektif stop loss dan profit secara automatik melalui indikator ATR, yang membolehkan ia menyesuaikan diri dengan perubahan dalam turun naik pasaran. Tetapkan stop loss yang lebih luas di pasaran yang bergelombang tinggi, dan dengan sewajarnya menyempit di pasaran yang bergelombang rendah.
Frekuensi dagangan sederhanaOleh kerana ia menggunakan mekanisme pengesahan berganda, strategi ini tidak akan berdagang dengan kerap, mengurangkan kos transaksi dan risiko perdagangan berlebihan.
Pemulihan trend pengesahan yang tertundaSebagai satu strategi untuk mengesan trend, mungkin terdapat masalah pengiktirafan yang tertunda pada awal pembalikan trend, yang menyebabkan titik masuk tidak cukup ideal. Penyelesaian adalah dengan mempertimbangkan untuk menambah petunjuk isyarat awal yang lebih sensitif sebagai bantuan.
Pasaran bergolak kurang baik: Dalam pasaran yang tidak mempunyai trend yang jelas, strategi mungkin menghasilkan perdagangan rugi berturut-turut. Ia disyorkan untuk menangguhkan strategi atau beralih ke set parameter lain yang direka khas untuk pasaran yang bergolak.
Kepekaan ParameterPerkembangan kecil dalam perkalian indikator hyperbole boleh memberi kesan yang ketara terhadap prestasi strategi. Pengaturan parameter yang paling sesuai untuk jenis perdagangan dan jangka masa tertentu perlu ditentukan melalui pengulangan.
Risiko penembusan palsu: Kemerosotan segera selepas harga melintasi purata bergerak untuk sementara waktu akan mencetuskan isyarat yang salah. Anda boleh mempertimbangkan untuk menambah tempoh pengesahan atau pengesahan pergerakan harga untuk mengurangkan kerugian akibat pelanggaran palsu.
Pergantungan persekitaran pasaranStrategi ini lebih baik dilakukan pada waktu perdagangan di London dan New York, dan mungkin kurang berkesan pada waktu Asia yang lebih rendah. Ia disyorkan untuk menyesuaikan parameter mengikut waktu perdagangan atau secara selektif mengaktifkan strategi pada waktu tertentu.
Pengenalan penapis masa: Kod boleh dioptimumkan untuk merangkumi penapis masa dagangan, hanya menjalankan dagangan apabila aktif pada masa perdagangan London dan New York. Ini boleh dicapai dengan menambahkan logik syarat masa, mengelakkan persekitaran pasaran yang kurang cair.
Penyesuaian faktor hiper dinamikStrategi semasa menggunakan penggandaan superpower tetap, yang boleh diubah menjadi parameter dinamik yang disesuaikan secara automatik berdasarkan turun naik pasaran. Sebagai contoh, gunakan nilai penggandaan yang lebih tinggi semasa turun naik yang tinggi ((3.0-3.2)), gunakan nilai yang lebih rendah semasa turun naik yang rendah ((2.5-2.7)).
Optimumkan mekanisme pengesahan silangPertimbangkan mekanisme pengesahan yang memerlukan harga tambahan untuk kekal di atas / di bawah purata bergerak untuk masa tertentu atau jarak tertentu untuk mengurangkan pelanggaran palsu. Anda boleh meminta harga untuk kekal dalam arah yang sama dalam N kitaran selepas persilangan.
Analisis struktur pasaran bersepadu: Memperkenalkan sokongan rintangan atau analisis struktur harga untuk meningkatkan kualiti kemasukan. Isyarat silang yang berlaku hanya di sekitar rintangan sokongan utama boleh dipertimbangkan.
Pengurusan risiko penyesuaian: Nisbah risiko-bayaran semasa adalah tetap dan boleh dioptimumkan dengan cara menyesuaikan diri berdasarkan keadaan pasaran yang dinamik. Sebagai contoh, peningkatan nisbah risiko-bayaran dalam pasaran yang kuat dan penurunan dalam trend yang lebih lemah.
Analisis pelbagai kerangka masa: Memperkenalkan pengesahan trend pada bingkai masa yang lebih tinggi, contohnya isyarat pada bingkai masa yang lebih rendah hanya dilaksanakan apabila arah trend pada garisan matahari sama. Ini memerlukan penambahan fungsi analisis bingkai masa yang lebih banyak.
Strategi perdagangan kuantitatif rata-rata silang bergerak bergerak bergerak yang dinamika membina sistem pengesanan trend yang agak mantap dengan menggabungkan isyarat persilangan rata-rata bergerak dan pengesahan penunjuk pergerakan. Strategi ini sangat sesuai untuk digunakan pada carta 1 hingga 4 jam untuk pasangan mata wang utama seperti EUR / USD dan GBP / USD, dan berfungsi dengan baik pada waktu perdagangan London dan New York.
Kelebihan utama strategi ini adalah mekanisme pengesahan berganda dan sistem pengurusan risiko yang baik, yang menyediakan kerangka kerja sistematik untuk perdagangan melalui nisbah pulangan risiko yang ditetapkan dan tetapan stop-loss berdasarkan turun naik. Walau bagaimanapun, sebagai sistem pengesanan trend, ia mungkin tidak berfungsi dengan baik di pasaran yang bergolak, dan terdapat risiko yang melekat untuk mengesan penarikan trend.
Kestabilan dan kesesuaian strategi dapat ditingkatkan lagi dengan arah pengoptimuman yang disyorkan, terutamanya dengan pengenalan penapis masa, penyesuaian parameter dinamik dan analisis pelbagai kerangka masa. Akhirnya, strategi ini menyediakan kerangka asas yang boleh dipercayai untuk pedagang kuantitatif, yang boleh disesuaikan dan diperluas mengikut pilihan risiko dan keadaan pasaran individu.
/*backtest
start: 2025-01-01 00:00:00
end: 2025-04-26 08:00:00
period: 1d
basePeriod: 1d
exchanges: [{"eid":"Futures_Binance","currency":"ETH_USDT"}]
*/
//@version=5
strategy("Islamabad Forex Academy Strategy-1",
overlay=true,
margin_long=100,
margin_short=100,
initial_capital=10000,
default_qty_type=strategy.percent_of_equity,
default_qty_value=15,
commission_type=strategy.commission.percent,
commission_value=0.03,
pyramiding=0)
// ===== CORE PARAMETERS =====
maLength = input.int(20, "Moving Average Length", minval=10, maxval=50)
atrPeriod = input.int(10, "ATR Period", minval=5, maxval=20)
supertrendFactor = input.float(2.8, "Supertrend Multiplier", step=0.1, minval=2.0, maxval=3.5)
rrRatio = input.float(3.0, "Risk:Reward Ratio", minval=2.0, maxval=5.0)
useCloseFilter = input.bool(true, "Require Close Cross MA")
// ===== CALCULATIONS =====
// Single Moving Average
ma = ta.sma(close, maLength)
// Supertrend with tighter settings
[supertrendLine, supertrendDir] = ta.supertrend(supertrendFactor, atrPeriod)
// Trend Conditions
uptrend = supertrendDir < 0 // Supertrend green
downtrend = supertrendDir > 0 // Supertrend red
// Entry Logic - Price must cross MA and stay beyond it
maCrossUp = useCloseFilter ? ta.crossover(close, ma) : ta.crossover(high, ma)
maCrossDown = useCloseFilter ? ta.crossunder(close, ma) : ta.crossunder(low, ma)
// Confirm with Supertrend
longCondition = maCrossUp and uptrend
shortCondition = maCrossDown and downtrend
// ===== RISK MANAGEMENT =====
atrValue = ta.atr(atrPeriod)
stopDistance = atrValue * 1.8
profitDistance = stopDistance * rrRatio
// ===== EXECUTION =====
if (longCondition)
strategy.entry("Long", strategy.long)
strategy.exit("Exit Long", "Long",
stop=close - stopDistance,
limit=close + profitDistance,
when=strategy.position_size > 0)
if (shortCondition)
strategy.entry("Short", strategy.short)
strategy.exit("Exit Short", "Short",
stop=close + stopDistance,
limit=close - profitDistance,
when=strategy.position_size < 0)
// ===== VISUALS =====
// MA Plot
plot(ma, "20 MA", color=color.new(#FF6D00, 0), linewidth=2)
// Supertrend Plot
uPlot = plot(uptrend ? supertrendLine : na, "Up Trend", color=color.new(#00C805, 0), linewidth=2)
dPlot = plot(downtrend ? supertrendLine : na, "Down Trend", color=color.new(#FF1100, 0), linewidth=2)
fill(uPlot, dPlot, color=color.new(supertrendDir < 0 ? #00C805 : #FF1100, 90))
// Entry Signals
plotshape(longCondition, "Buy", shape.triangleup, location.belowbar, color=color.new(#00C805, 0), size=size.small)
plotshape(shortCondition, "Sell", shape.triangledown, location.abovebar, color=color.new(#FF1100, 0), size=size.small)