
Strategi konfirmasi DMI adalah sistem perdagangan komprehensif yang menggabungkan rata-rata bergerak sederhana (SMA), indikator pergerakan arah (DMI) dan identifikasi pola perubahan harga untuk menangkap titik masuk berisiko rendah di pasar yang sedang tren. Gagasan inti dari strategi ini adalah untuk masuk ke dalam tren yang telah ditetapkan, menunggu harga untuk membalikkan kembali ke garis tengah yang penting, sementara menggunakan indikator DMI untuk mengkonfirmasi arah tren, dan membentuk mekanisme kontrol risiko yang lengkap dengan menempatkan posisi stop loss dengan menggerakkan titik.
Strategi ini didasarkan pada sinergi dari beberapa komponen utama:
Multiple linear systemStrategi: Menggunakan rata-rata bergerak sederhana dari 5 periode yang berbeda ((9/20/50/100/200) untuk menilai struktur pasar. Di antaranya, rata-rata 20 dan 200 hari sebagai alat penilaian tren utama.
Analisis kemiringan rata-rata: Mengkonfirmasi kekuatan dan arah tren dengan menghitung slope 20 dan 200 dalam 5 siklus terakhir (slope 20 dan slope 200). Slope positif menunjukkan tren naik, slope negatif menunjukkan tren turun.
Hubungan harga dengan rata-rataStrategi ini membutuhkan hubungan posisi harga dengan garis rata-rata kunci ((20 dan 200 hari) sesuai dengan arah tren ((harga di atas garis rata-rata saat bermuatan tinggi, harga di bawah garis rata-rata saat bermuatan rendah).
Array linear: Dalam kondisi multihead, garis rata-rata 20 hari diminta berada di atas garis rata-rata 200 hari; dalam kondisi kosong sebaliknya.
Mekanisme panggilan kembali:
Konfirmasi arah DMI: Menggunakan indikator DMI ((periode 14) untuk mengkonfirmasi arah tren:
Stop loss saat berayun:
Mekanisme multi-filterDengan menggabungkan sistem garis rata, garis rata, posisi harga, dan beberapa kondisi seperti konfirmasi DMI, secara efektif mengurangi sinyal palsu dan meningkatkan keakuratan transaksi.
PemulanganStrategi: Menunggu harga kembali ke garis rata-rata yang penting untuk masuk ke pasar, memberikan risiko dan reward yang lebih baik daripada mengejar langsung.
Konfirmasi trenPerdagangan yang dilakukan dengan cara triple verifikasi posisi, alignment, dan slope garis rata-rata, memastikan bahwa perdagangan dilakukan hanya dalam tren yang kuat, dan menghindari perdagangan yang sering terjadi di pasar yang bergoyang.
Strategi Stop Loss yang Jelas: Menggunakan titik-titik yang berayun sebagai posisi stop loss, metode ini lebih sesuai dengan logika operasi pasar berdasarkan struktur pasar daripada persentase yang ditetapkan secara acak.
Konfirmasi Indeks DMIMenambahkan indikator DMI sebagai alat tambahan untuk mengkonfirmasi tren, dan memfilter lebih lanjut sinyal yang lebih tinggi dari ketidakpastian.
Sinyal perdagangan visualStrategi: Menampilkan sinyal beli dan jual dengan tanda visual yang jelas, sehingga memungkinkan pedagang untuk mengidentifikasi peluang perdagangan dengan cepat.
Identifikasi keterlambatan perubahan trenKarena strategi ini bergantung pada sistem garis rata, reaksi yang terlambat dapat terjadi pada titik-titik perubahan tren, yang menyebabkan terjadinya penarikan yang tidak tepat waktu atau pada akhir tren.
Risiko Penembusan PalsuHarga mungkin akan melintasi garis rata-rata untuk sementara waktu dan kemudian kembali ke bawah, membentuk terobosan palsu, memicu sinyal yang salah.
Tantangan pengoptimalan parameterStrategi ini mencakup beberapa parameter (misalnya periode rata-rata, periode regresi kemiringan, siklus DMI, dan lain-lain), yang mungkin memerlukan pengaturan parameter yang berbeda untuk pasar dan jangka waktu yang berbeda.
Keterbatasan lingkungan pasarStrategi ini bekerja lebih baik di pasar yang jelas sedang tren, tetapi mungkin menghasilkan lebih banyak kerugian di pasar yang bergoyang.
Stop loss terlalu besarStrategi stop loss yang didasarkan pada titik-titik yang bergoyang dapat menyebabkan stop loss yang terlalu besar di pasar yang bergejolak, yang tidak sesuai dengan manajemen uang.
Kurangnya pengendalian risikoStrategi ini tidak memiliki mekanisme penghentian yang dinamis, yang dapat menyebabkan pengembalian keuntungan yang telah diperoleh.
Menambahkan parameter adaptasiAdaptasi: Adaptasi dapat diperkenalkan untuk menyesuaikan siklus rata-rata dan periode regresi slope sesuai dengan dinamika pasar yang berfluktuasi, sehingga strategi dapat beradaptasi dengan lebih baik terhadap berbagai kondisi pasar.
Tambahkan filter fluktuasiIntroduksi indikator ATR atau indikator volatilitas, untuk menyesuaikan pelaksanaan strategi atau menghentikan perdagangan dalam lingkungan pasar yang terlalu besar atau terlalu kecil.
Perbaikan mekanisme penghentianPeningkatan mekanisme penutupan berdasarkan struktur pasar atau rasio pengembalian risiko target, seperti penutupan bergerak, penutupan parsial, dan lain-lain, untuk lebih melindungi keuntungan yang telah diperoleh.
Identifikasi lingkungan pasar: Menambahkan indikator kekuatan tren atau algoritma klasifikasi kondisi pasar, secara otomatis menurunkan posisi atau menghentikan perdagangan di pasar yang bergoyang di lateral.
Konfirmasi masukUntuk meningkatkan keandalan sinyal masuk, dapat dipertimbangkan untuk meningkatkan konfirmasi volume transaksi atau konfirmasi format grafik.
Pengelolaan dana yang optimal: Dimensi posisi disesuaikan secara dinamis berdasarkan ATR atau indikator volatilitas lainnya, untuk mengontrol celah risiko dalam lingkungan fluktuasi yang berbeda
Analisis multi-frame waktuIntroduksi pengesahan tren pada kerangka waktu yang lebih tinggi untuk memastikan bahwa arah perdagangan konsisten dengan tren pada tingkat yang lebih besar.
Strategi konfirmasi DMI adalah sistem pelacakan tren yang terstruktur, logis dan jelas. Melalui informasi multi-dimensi seperti garis rata-rata ganda, analisis kemiringan, penyesuaian harga, dan konfirmasi DMI, strategi ini mencari titik masuk dengan probabilitas tinggi dan risiko rendah dalam tren yang telah ditetapkan.
Namun, strategi ini juga memiliki keterbatasan seperti identifikasi tren yang tertinggal, risiko false breakout, dan pasar yang bergolak. Dengan memperkenalkan parameter adaptasi, penyaringan volatilitas, dan pengoptimalan yang lebih baik, seperti mekanisme hambatan dan identifikasi lingkungan pasar, strategi ini dapat ditingkatkan lebih lanjut. Yang paling penting, dalam aplikasi praktis, pedagang harus menyesuaikan parameter strategi sesuai dengan lingkungan pasar, preferensi risiko mereka sendiri, dan prinsip manajemen dana, untuk mendapatkan efek maksimal.
/*backtest
start: 2025-06-30 00:00:00
end: 2025-07-04 08:00:00
period: 10m
basePeriod: 10m
exchanges: [{"eid":"Futures_Binance","currency":"ETH_USDT"}]
*/
//@version=5
strategy("Full SMA Pullback Strategy with DMI", overlay=true, default_qty_type=strategy.percent_of_equity, default_qty_value=10)
// === SMA Definitions ===
sma9 = ta.sma(close, 9)
sma20 = ta.sma(close, 20)
sma50 = ta.sma(close, 50)
sma100 = ta.sma(close, 100)
sma200 = ta.sma(close, 200)
// === Inputs ===
slopeLookback = input.int(5, title="Slope Lookback Period")
swingLookback = input.int(10, title="Swing High/Low Period")
dmiLength = input.int(14, title="DMI Period")
// === Slope Calculation ===
slope20 = sma20 - sma20[slopeLookback]
slope200 = sma200 - sma200[slopeLookback]
// === DMI Calculation ===
[plusDI, minusDI, _] = ta.dmi(dmiLength, dmiLength)
dmiLongConfirm = plusDI > minusDI
dmiShortConfirm = minusDI > plusDI
// === Long Conditions ===
trendUp = close > sma20 and close > sma200
smaOrderUp = sma20 > sma200
slopeUp = slope20 > 0 and slope200 > 0
pullbackUp = close[1] < sma20[1] and close > sma20
longCond = trendUp and smaOrderUp and slopeUp and pullbackUp and dmiLongConfirm
swingLow = ta.lowest(low, swingLookback)
// === Short Conditions ===
trendDown = close < sma20 and close < sma200
smaOrderDown = sma20 < sma200
slopeDown = slope20 < 0 and slope200 < 0
pullbackDown = close[1] > sma20[1] and close < sma20
shortCond = trendDown and smaOrderDown and slopeDown and pullbackDown and dmiShortConfirm
swingHigh = ta.highest(high, swingLookback)
// === Strategy Entry & Exit ===
if (longCond)
strategy.entry("Long", strategy.long)
strategy.exit("Exit Long", from_entry="Long", stop=swingLow)
if (shortCond)
strategy.entry("Short", strategy.short)
strategy.exit("Exit Short", from_entry="Short", stop=swingHigh)
// === Plotting SMAs ===
plot(sma9, title="SMA 9", color=color.gray)
plot(sma20, title="SMA 20", color=color.orange)
plot(sma50, title="SMA 50", color=color.purple)
plot(sma100, title="SMA 100", color=color.green)
plot(sma200, title="SMA 200", color=color.blue)
// === Signal Markers ===
plotshape(longCond, title="Buy Signal", location=location.belowbar, color=color.green, style=shape.triangleup, size=size.small)
plotshape(shortCond, title="Sell Signal", location=location.abovebar, color=color.red, style=shape.triangledown, size=size.small)