
Strategi perdagangan kuantitatif lintas rata-rata bergerak dinamis adalah sistem perdagangan yang menggabungkan indikator supertrend dan rata-rata bergerak, terutama untuk perdagangan pasar forex dalam jangka waktu 1 jam hingga 4 jam. Strategi ini menggunakan persilangan harga dan rata-rata bergerak sebagai sinyal awal, dan kemudian melakukan konfirmasi tren melalui indikator supertrend, untuk membangun sistem entry, stop loss, dan stop loss yang lengkap.
Prinsip inti dari strategi ini didasarkan pada sistem pelacakan tren multi-konfirmasi, yang terdiri dari beberapa komponen utama:
Sinyal silang rata-rata bergerak: Strategi menggunakan 20 periode ((10-50 yang dapat disesuaikan) rata-rata bergerak sederhana ((SMA) sebagai garis dasar. Harga yang melintasi rata-rata bergerak ini dianggap sebagai sinyal perubahan tren potensial. Sistem ini mendukung dua mode persimpangan: persimpangan harga penutupan (lebih konservatif) atau persimpangan titik rendah tinggi (lebih radikal).
Indikator kekuatan super dikonfirmasi: Menggunakan indikator hypertrend dengan faktor 2.8 (dapat disesuaikan antara 2.0-3.5) dan 10 periode (dapat disesuaikan antara 5-20) sebagai alat konfirmasi arah tren.
Logika input:
Sistem manajemen risiko:
Mekanisme multiple confirmationSistem double confirmation yang digabungkan dengan moving averages dan superpower indicator secara efektif mengurangi sinyal palsu dan meningkatkan akurasi perdagangan. Dalam pasar yang jelas tren, double confirmation ini dapat secara efektif memfilter sinyal yang menyesatkan dalam situasi getaran.
Adaptif: Parameter strategi memiliki fleksibilitas yang tinggi, termasuk siklus rata-rata bergerak, perkalian indikator superpower, dan siklus ATR. Hal ini memungkinkan strategi untuk melakukan penyesuaian yang optimal sesuai dengan lingkungan pasar yang berbeda dan volatilitas. Khususnya, perkalian indikator superpower dalam kisaran penyesuaian 2.5-3.2, dapat disesuaikan dengan lingkungan pasar yang berbeda.
Manajemen Risiko yang Baik: Sistem stop loss dinamis berbasis ATR yang terintegrasi, memastikan bahwa risiko pada setiap transaksi dikendalikan dalam kisaran yang ditentukan. Pengaturan rasio risiko-pengembalian tetap (RRR) : 1 membantu membangun profitabilitas jangka panjang.
Adaptasi fluktuasiStrategi ini secara otomatis menyesuaikan target stop loss dan profit dengan indikator ATR, sehingga dapat beradaptasi dengan perubahan volatilitas pasar. Tetapkan stop loss yang lebih luas di pasar yang berfluktuasi tinggi dan yang lebih sempit di pasar yang berfluktuasi rendah.
Frekuensi perdagangan sedangStrategi ini tidak akan sering diperdagangkan, mengurangi biaya transaksi dan mengurangi risiko over-trading.
Pembalikan tren identifikasi yang tertundaSebagai strategi pelacakan tren, mungkin ada masalah identifikasi yang tertunda pada awal pembalikan tren, yang menyebabkan titik masuk tidak cukup ideal. Solusinya adalah mempertimbangkan untuk menambahkan indikator sinyal awal yang lebih sensitif sebagai tambahan.
Performa Bursa Bergoyang: Dalam pasar yang tidak memiliki tren yang jelas, strategi dapat menghasilkan perdagangan kerugian berturut-turut. Disarankan untuk menangguhkan strategi atau beralih ke set parameter lain yang dirancang khusus untuk pasar yang bergoyang ketika pasar yang bergoyang teridentifikasi.
Parameter SensitivitasPerubahan kecil dalam perkalian indikator hypertrophy dapat memiliki dampak yang signifikan pada kinerja strategi. Pengaturan parameter yang paling cocok untuk varietas perdagangan dan jangka waktu tertentu perlu ditentukan melalui pengulangan.
Risiko Penembusan Palsu: Situasi di mana harga segera turun setelah melintasi rata-rata bergerak untuk sementara waktu akan memicu sinyal yang salah. Anda dapat mempertimbangkan untuk menambahkan periode konfirmasi atau konfirmasi pergerakan harga untuk mengurangi kerugian akibat terobosan palsu.
Ketergantungan lingkungan pasarStrategi ini bekerja lebih baik pada jam perdagangan London dan New York, dan mungkin tidak bekerja dengan baik pada jam perdagangan Asia yang lebih rendah. Disarankan untuk menyesuaikan parameter sesuai dengan jam perdagangan atau secara selektif mengaktifkan strategi pada waktu tertentu.
Pengenalan Filter Waktu: Kode dapat dioptimalkan untuk menyertakan filter waktu transaksi, hanya melakukan transaksi saat aktif pada waktu perdagangan London dan New York. Hal ini dapat dicapai dengan menambahkan logika kondisi waktu, menghindari lingkungan pasar yang kurang likuiditas.
Penyesuaian faktor hipermomentum dinamisStrategi saat ini menggunakan perkalian superpower tetap, yang dapat ditingkatkan menjadi parameter dinamis yang disesuaikan secara otomatis berdasarkan volatilitas pasar. Misalnya, gunakan nilai perkalian yang lebih tinggi selama volatilitas tinggi (<3.0-3.2), gunakan nilai yang lebih rendah selama volatilitas rendah (<2.5-2.7).
Optimalisasi mekanisme verifikasi silangPertimbangkan mekanisme konfirmasi bahwa harga tambahan perlu disimpan di atas / di bawah rata-rata bergerak untuk waktu tertentu atau jarak tertentu untuk mengurangi false breakout. Anda dapat meminta harga untuk tetap searah dalam N siklus setelah persilangan.
Analisis struktur pasar yang terintegrasiIntroduksi resistance level support atau analisis struktur harga untuk meningkatkan kualitas entry. Sinyal silang yang hanya terjadi di sekitar resistance level support utama dapat dipertimbangkan.
Adaptasi Manajemen Risiko: Rasio risiko-pengembalian saat ini tetap, dapat dioptimalkan dengan cara penyesuaian berdasarkan kondisi pasar yang dinamis. Misalnya, meningkatkan rasio risiko-pengembalian di pasar tren yang kuat, dan menurunkan di tren yang lebih lemah.
Analisis multi-frame waktu: Mengenaikan pengesahan tren pada kerangka waktu yang lebih tinggi, misalnya sinyal pada kerangka waktu yang lebih rendah hanya dilakukan jika arah tren pada garis matahari sama. Untuk ini diperlukan penambahan fungsi analisis kerangka waktu yang lebih banyak.
Strategi perdagangan kuantitatif rata-rata lintas lintas bergerak bergerak bergerak membangun sistem pelacakan tren yang relatif stabil dengan mengkombinasikan sinyal lintas rata-rata bergerak dan konfirmasi indikator overbought. Strategi ini sangat cocok untuk diterapkan pada grafik 1-4 jam dari pasangan mata uang utama seperti EUR / USD dan GBP / USD, dan berkinerja terbaik di London dan New York.
Keunggulan inti dari strategi ini adalah mekanisme multiple confirmation dan sistem manajemen risiko yang baik, yang memberikan kerangka kerja yang sistematis untuk perdagangan melalui predeterminasi rasio risiko-reward dan pengaturan stop loss berdasarkan volatilitas. Namun, sebagai sistem pelacakan tren, sistem ini mungkin tidak berkinerja baik di pasar yang bergoyang, dan ada risiko yang melekat untuk mengidentifikasi keterlambatan pembalikan tren.
Stabilitas dan adaptasi strategi dapat ditingkatkan lebih lanjut dengan mengoptimalkan arah pelaksanaan saran, terutama dengan memperkenalkan filter waktu, penyesuaian parameter dinamis, dan analisis multi-frame waktu. Akhirnya, strategi ini memberikan framework dasar yang andal bagi pedagang kuantitatif yang dapat disesuaikan dan diperluas sesuai dengan preferensi risiko pribadi dan kondisi pasar.
/*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)