Kategori
Teknis
Tingkat
Menengah
Digunakan pada
Desain strategiOperasional MT5

Indeks Arah Rata-rata (ADX)

Indikator ADX mengukur kekuatan tren pada skala 0 sampai 100 tanpa menyatakan arahnya. EA memakainya sebagai filter rezim: strategi tren menunggu nilai tinggi, sedangkan strategi mean reversion menunggu nilai rendah.

juga: ADX, Average Directional Movement Index, DMI

Diperbarui

Dengan bahasa sederhana

Sebuah angka yang menyatakan seberapa kuat pasar bergerak ke satu arah, tanpa menyebutkan arah mana. Rendah berarti pasar tidak menuju ke mana-mana secara khusus; tinggi berarti pasar menuju suatu tempat, dan tandanya harus datang dari sumber lain.

Mengapa ini penting

Kebanyakan EA gagal bukan karena logika entrinya salah, melainkan karena logika itu benar pada satu jenis pasar dan salah pada jenis lainnya. ADX adalah cara termurah untuk memberi sebuah strategi pendapat tentang jenis pasar yang sedang dihadapinya, dan itulah sebabnya ia jauh lebih sering muncul sebagai filter ketimbang sebagai sinyal.

  • Ia memisahkan dua keluarga strategi yang saling menghancurkan. EA grid atau mean reversion merugi terus-menerus dalam tren kuat, sedangkan trend follower kehabisan darah dalam pasar sideways; satu ambang saja menjaga masing-masing keluar dari cuaca lawannya.
  • Secara konstruksi ia tidak berarah, sehingga menjadi filter dan bukan sinyal — dan itulah alasan ia selalu dipasangkan dengan sesuatu yang punya arah.
  • Ia lambat. Penghalusan yang membuatnya stabil juga berarti ia mengonfirmasi tren setelah tren itu dimulai, jadi ia lebih baik untuk menyingkirkan kondisi buruk daripada menangkap kondisi baik lebih awal.
  • Filter itu bisa diuji: jalankan strategi yang sama dengan dan tanpa filter, lalu baca selisihnya pada drawdown, bukan hanya pada profit.

Di MetaTrader 5

Letaknya di MT5

  • Insert → Indicators → Trend → Average Directional Movement Index
  • Jendela indikator menggambar tiga garis: garis ADX itu sendiri, +DI dan −DI
  • Pasangan DI membawa arah yang tidak dimiliki ADX — +DI di atas −DI adalah susunan bullish
  • Strategy Tester → Inputs — periode dan ambang adalah input, dan ambang khususnya mengundang overfitting

Cara EA memakainya

  • Buat handle di OnInit — iADX(_Symbol, PERIOD_CURRENT, 14) — lalu baca buffer 0 untuk ADX, buffer 1 untuk +DI, dan buffer 2 untuk −DI.
  • Sebagai gerbang sebelum aturan entri: EA tren langsung keluar selama ADX belum di atas ambangnya; EA range keluar selama ADX belum di bawahnya.
  • Sebagai pemeriksaan arah ketika garis DI dipakai: +DI di atas −DI untuk posisi beli, kebalikannya untuk jual, dengan ADX memastikan memang ada tren yang bisa diikuti.
  • Baca dari bar yang sudah selesai, bukan bar yang sedang terbentuk — nilai ADX yang berkedip melewati ambang di dalam bar menghasilkan entri yang tidak bisa direproduksi saat pengujian.
  • Sebagian EA juga mensyaratkan ADX sedang naik dan bukan sekadar tinggi, sehingga menyaring nilai yang kuat tetapi sudah memudar menjelang akhir sebuah pergerakan.

Pengaturan umum

Pengaturan Nilai umum Catatan
Periode 14 Nilai bawaan yang konvensional. Periode lebih pendek bereaksi lebih cepat dan melintasi ambang lebih sering, ke kedua arah.
Ambang tren 20–25 Di atas nilai ini logika trend following diaktifkan. Nilai persisnya kurang penting dibanding kestabilannya terhadap nilai-nilai tetangga.
Ambang range di bawah 20 EA grid dan mean reversion umumnya mensyaratkan ini sebelum membuka posisi apa pun.
Tren kuat di atas 40 Di sini entri melawan tren dan mean reversion biasanya diblokir sepenuhnya.
Timeframe pembacaan timeframe entri atau satu tingkat di atasnya Membaca timeframe lebih tinggi memberi sinyal rezim yang lebih lambat dan stabil, dengan konsekuensi reaksi yang lebih telat.

Masalah operasional yang sering terjadi

  • Handle dibuat di dalam OnTick alih-alih OnInit, yang menyebabkan kebocoran dan akhirnya mengembalikan INVALID_HANDLE.
  • CopyBuffer gagal saat awal sebelum cukup bar termuat, yang terbaca sebagai ADX nol dan diam-diam menonaktifkan — atau mengaktifkan — filter.
  • Ambang diletakkan persis di tempat indikator menghabiskan sebagian besar waktunya, sehingga filter menyala dan mati terus dan perilaku EA ditentukan oleh derau.
  • Mengoptimasi ambang ke nilai backtest terbaik, sehingga menghasilkan angka yang hanya bekerja pada jendela yang diuji.
  • Membaca ADX sebagai penunjuk arah lalu membuka beli pada nilai tinggi di pasar yang sedang jatuh.

Fungsi MT5 terkait

iADX(symbol, timeframe, adx_period)
Membuat handle; satu panggilan di OnInit, dipertahankan sepanjang umur EA.
CopyBuffer(handle, 0, …)
Garis ADX itu sendiri — kekuatan tren, tanpa arah.
CopyBuffer(handle, 1, …) / CopyBuffer(handle, 2, …)
+DI dan −DI, pasangan berarah yang menjadi asal garis ADX.
iTime(symbol, timeframe, 1)
Stempel waktu bar yang sudah selesai, dipakai EA untuk memastikan pembacaannya stabil.

Contoh

Satu aturan entri, dua filter rezim, kondisi yang berlawanan. Aturannya tidak berubah; yang berubah adalah kapan ia boleh dieksekusi.

ADX di bawah 20
rezim range
Logika mean reversion dan grid diaktifkan; entri tren diblokir.
ADX 20–40
tren moderat
Entri tren diaktifkan; entri melawan tren umumnya tidak.
ADX di atas 40
tren kuat
Mean reversion diblokir sepenuhnya — inilah rezim yang menghancurkannya.
+DI vs −DI
arahnya
ADX menyatakan seberapa kuat; pasangan ini menyatakan ke arah mana.

Efek terukur dari filter rezim biasanya berupa drawdown yang lebih kecil, bukan profit yang lebih besar — ia menghapus kerugian alih-alih menambah kemenangan.

Perhitungan if (adx[1] < TrendThreshold) return; // EA tren tidak melakukan apa pun dalam range

Hasil Strategi yang menahan diri persis pada kondisi yang tidak pernah cocok untuknya

Cara memakainya

Nilailah sebuah filter dari apa yang ia hapus. Perbandingan yang benar adalah strategi yang sama dengan dan tanpa filter, pada jendela yang sama, dibaca pada drawdown selain pada hasil bersih.

Rentang Artinya
ADX di bawah 20 Tidak ada tren efektif. Entri trend following memiliki ekspektasi terburuknya di sini, dan sinyal breakout sebagian besar gagal.
ADX 20–40 Tren yang nyata sedang berlangsung. Rentang operasi yang biasa untuk logika tren.
ADX di atas 40 Tren kuat, dan sering kali sudah larut. Entri tren masih bekerja; strategi melawan tren dan grid berada pada titik paling berbahaya.
Ambang yang disetel ke nilai backtest terbaik Parameter yang dipaskan. Periksa apakah ambang tetangganya memberi hasil serupa sebelum mempercayainya.
  • Uji filter sebagai satu perubahan, bukan sebagai bagian dari paket: jalankan strategi dengan filter dimatikan pada data yang sama, lalu bandingkan drawdown, jumlah transaksi, dan profit factor.
  • Harapkan jumlah transaksi berkurang. Filter yang tidak mengurangi jumlah transaksi berarti tidak menyaring apa pun.
  • Baca ADX pada bar yang sudah selesai dan pertimbangkan timeframe lebih tinggi untuk keputusan rezim, agar strategi tidak berganti karakter beberapa kali dalam satu sesi.
  • Jangan pakai ia sendirian untuk menentukan arah. Pasangan +DI/−DI atau sebuah moving average harus menyediakan tandanya.

Halaman `/indicators` untuk ADX membahas perhitungan dan pembacaan grafik; entri ini membahas penggunaannya sebagai filter rezim bagi EA.

Kesalahan umum

Membaca ADX sebagai bullish atau bearish

Ia adalah ukuran kekuatan tanpa tanda. Nilai tinggi saat pasar runtuh sama tingginya dengan nilai saat pasar reli, dan itulah sebabnya ia selalu dipasangkan dengan sesuatu yang berarah.

Menaruh ambang di tempat indikator berdiam

Jika ADX menghabiskan sebagian besar waktunya di dekat ambang, filter akan terus berganti keadaan dan perilaku strategi ditentukan oleh derau. Ambang berguna ketika ia dilintasi jarang dan secara tegas.

Menganggap filter itu gratis

Setiap filter menghapus transaksi, termasuk yang menguntungkan. Ujinya adalah apakah ia menghapus lebih banyak kerugian daripada keuntungan — dan itu adalah pengukuran, bukan asumsi.

Memakai periode ADX cepat agar bereaksi lebih awal

ADX dihaluskan dua kali secara rancangan. Memperpendek periode membuatnya melintasi ambang lebih sering ke kedua arah, yang biasanya menambah whipsaw alih-alih mempercepat entri.

Pertanyaan yang sering diajukan

Nilai ADX berapa yang menandakan adanya tren?
Nilai di atas kira-kira 20 sampai 25 adalah ambang konvensional untuk menganggap pasar sedang tren, dan di atas 40 sebagai tren kuat. Angka persisnya kurang penting dibanding kestabilannya: ambang yang hanya bekerja pada satu nilai tertentu di satu jendela pengujian tertentu adalah parameter yang dipaskan, bukan aturan rezim.
Apakah ADX menyatakan tren sedang naik atau turun?
Tidak. Garis ADX hanya mengukur kekuatan. Arah datang dari garis +DI dan −DI yang menjadi asalnya — +DI di atas −DI adalah susunan bullish — atau dari indikator berarah terpisah seperti moving average.
Bagaimana EA memakai ADX sebagai filter?
Sebagai gerbang di depan aturan entri. EA trend following tidak melakukan apa pun selama ADX belum di atas ambangnya; EA grid atau mean reversion tidak melakukan apa pun selama ADX belum di bawahnya. Efeknya biasanya muncul sebagai drawdown yang lebih kecil dan bukan profit yang lebih besar, karena filter menghapus transaksi yang diambil pada kondisi yang paling buruk ditangani strategi.
Mengapa filter ADX saya justru memperburuk hasil?
Ada dua sebab yang umum. Ambangnya bisa berada persis di tempat indikator menghabiskan sebagian besar waktunya, sehingga ia berganti keadaan mengikuti derau; atau filter itu dioptimasi pada jendela yang sama dengan aturan entri, sehingga ia pas dengan rezim jendela tersebut dan bukan dengan konsep rezim. Menguji strategi dengan dan tanpa filter pada data out-of-sample memisahkan kedua kemungkinan itu.

Artikel terkait