Bagaimana ADX dihitung?

Pelajari bagaimana ADX dihitung menggunakan rumus inti dan input.

Bagaimana ADX dihitung?

Jawaban langsung: perhitungan ADX dalam satu rantai

ADX (Average Directional Index) dibangun berlapis-lapis dari perubahan harga: (1) hitung pergerakan arah dan true range untuk setiap periode, (2) haluskan rangkaian tersebut, (3) hitung indikator arah (+DI dan −DI), (4) hitung DX dari hubungan keduanya, dan (5) haluskan DX untuk mendapatkan ADX.

Definisi standar yang umum menggunakan panjang lookback yang sering ditulis sebagai n (seringkali 14, tetapi metode ini mendukung nilai lain). Nilai ADX bergantung pada n yang dipilih dan aturan penghalusan yang digunakan oleh implementasi.

Mekanisme: definisi dan rumus langkah demi langkah

Untuk menjelaskan perhitungan tanpa mengasumsikan data langsung, asumsikan Anda memiliki urutan candle/bar yang diurutkan berdasarkan waktu. Untuk setiap bar t, Anda memerlukan high, low, dan close (atau setidaknya high/low/close seperti yang didefinisikan di bawah).

1) Hitung True Range (TR)

True Range menangkap besarnya pergerakan, termasuk gap. Untuk bar t relatif terhadap t−1:

  • TR(t) = max( High(t) − Low(t), |High(t) − Close(t−1)|, |Low(t) − Close(t−1)| )

Definisi ini membuat TR lebih besar ketika rentang saat ini lebar atau ketika harga melompati penutupan sebelumnya.

2) Hitung pergerakan arah: +DM dan −DM

Pergerakan arah memisahkan pergerakan naik dari pergerakan turun:

  • UpMove(t) = High(t) − High(t−1)
  • DownMove(t) = Low(t−1) − Low(t)

Aturan yang umum adalah:

  • +DM(t) = UpMove(t) jika UpMove(t) > DownMove(t) dan UpMove(t) > 0, selain itu 0
  • −DM(t) = DownMove(t) jika DownMove(t) > UpMove(t) dan DownMove(t) > 0, selain itu 0

Struktur “salah satu/atau” ini memastikan hanya arah yang dominan yang berkontribusi pada setiap langkah.

3) Haluskan TR, +DM, dan −DM

ADX tidak dihitung dari TR dan DM mentah setiap bar; ini menggunakan langkah penghalusan. Banyak implementasi menggunakan penghalusan gaya Wilder (pendekatan umum), yang setara dengan rata-rata bergerak rekursif tertentu.

Misalkan SmoothedTR(t) adalah TR yang dihaluskan dan demikian juga Smoothed+DM(t) dan Smoothed−DM(t).

Dengan penghalusan gaya Wilder untuk periode n, rekursi biasanya terlihat seperti:

  • SmoothedTR(t) = SmoothedTR(t−1) − (SmoothedTR(t−1) / n) + TR(t)
  • Smoothed+DM(t) = Smoothed+DM(t−1) − (Smoothed+DM(t−1) / n) + +DM(t)
  • Smoothed−DM(t) = Smoothed−DM(t−1) − (Smoothed−DM(t−1) / n) + −DM(t)

Inisialisasi itu penting: implementasi biasanya memulai rangkaian yang dihaluskan setelah cukup banyak bar untuk membangun jumlah atau rata-rata awal selama n periode.

4) Hitung +DI dan −DI

Indikator arah mengubah pergerakan arah yang dihaluskan menjadi nilai relatif terhadap TR yang dihaluskan:

  • +DI(t) = 100 × Smoothed+DM(t) / SmoothedTR(t)
  • −DI(t) = 100 × Smoothed−DM(t) / SmoothedTR(t)

5) Hitung DX (Directional Index)

DX menggambarkan seberapa kuat satu arah mendominasi arah lainnya:

  • DX(t) = 100 × |+DI(t) − −DI(t)| / (+DI(t) + −DI(t))

Jika +DI(t) + −DI(t) adalah nol (mungkin terjadi dengan pergerakan datar atau tanpa arah dan kondisi data/awal tertentu), implementasi harus menangani pembagian dengan nol.

6) Haluskan DX untuk mendapatkan ADX

Terakhir, ADX adalah rata-rata bergerak yang dihaluskan dari DX selama periode n (sekali lagi, umumnya gaya Wilder):

  • ADX(t) = rata-rata DX(t) yang dihaluskan selama panjang n yang dipilih

Dalam praktiknya, nilai ADX pertama dihasilkan setelah wilayah pemanasan (seringkali setelah mengumpulkan cukup titik DX). Platform yang berbeda mungkin memilih konvensi inisialisasi yang sedikit berbeda, yang menyebabkan perbedaan kecil.

Bukti melalui contoh kerja kecil (dengan asumsi eksplisit)

Tanpa data waktu nyata, contoh numerik lengkap akan menjadi arbitrer. Sebagai gantinya, berikut adalah template perhitungan ringkas yang dapat Anda terapkan pada bar OHLC Anda sendiri.

Asumsikan Anda memiliki bar yang berurutan dan Anda memilih periode n. Untuk setiap bar mulai dari bar kedua (karena t−1 diperlukan):

  1. Hitung TR(t) dari High(t), Low(t), dan Close(t−1).
  2. Hitung +DM(t) dan −DM(t) dari perbedaan high dan low.
  3. Bangun nilai yang dihaluskan SmoothedTR(t), Smoothed+DM(t), Smoothed−DM(t) menggunakan aturan penghalusan yang dipilih dan inisialisasi yang benar.
  4. Hitung +DI(t) dan −DI(t).
  5. Hitung DX(t).
  6. Haluskan DX(t) untuk membentuk ADX(t).

Asumsi material yang perlu dinyatakan saat Anda memverifikasi secara independen: sumber data Anda (nilai OHLC mana yang tepat), n yang Anda pilih, dan aturan penghalusan Anda harus cocok dengan implementasi yang Anda periksa. Bahkan jika rumusnya “standar,” detail pemanasan dan penghalusan bisa berbeda.

Jika Anda ingin mengonfirmasi bahwa dua sistem menghitung ADX yang sama, ekspor rangkaian OHLC yang sama, terapkan n yang sama, gunakan definisi TR/DM yang sama, dan verifikasi rangkaian antara (+DM/−DM, +DI/−DI, DX) sebelum membandingkan ADX akhir.

Keterbatasan dan mode kegagalan yang harus Anda perhitungkan

ADX sering digambarkan sebagai ukuran “kekuatan tren,” tetapi interpretasi itu memiliki batasan. Masalah utama berasal dari sensitivitas data dan dari bagaimana pergerakan arah berperilaku.

1) ADX bergantung pada penghalusan dan inisialisasi

Karena ADX menggunakan TR/DM yang dihaluskan dan DX yang dihaluskan, hasil dapat bervariasi ketika:

  • Anda mengubah n,
  • Anda mengubah metode penghalusan (atau konvensi inisialisasi), atau
  • platform Anda menangani kasus tepi secara berbeda (misalnya, bar awal, pembagian dengan nol).

Ini adalah mode kegagalan utama saat membandingkan angka antar penyedia.

2) Nilai tinggi tidak menjamin keunggulan arah

ADX dihitung dari besarnya dominasi arah, bukan dari arah yang dijamin. Ini bisa relatif tinggi ketika satu arah secara konsisten mendominasi bahkan jika lingkungan yang lebih luas kemudian berubah.

Ini penting karena pergeseran kemudian dalam pergerakan arah dapat membuat perilaku ADX sebelumnya kurang informatif.

3) Pasar yang berombak atau terikat rentang dapat menghasilkan pembacaan kekuatan yang menyesatkan

Definisi pergerakan arah masih dapat menciptakan dominasi berulang dalam pergerakan kecil yang tidak teratur. Dalam beberapa kondisi “sideways tetapi volatil,” ADX mungkin naik meskipun tidak ada struktur tren yang stabil dan berkelanjutan.

Itu berarti ADX paling baik diperlakukan sebagai indikator karakteristik pergerakan, bukan sebagai aturan keputusan yang berdiri sendiri.

Verifikasi: cara memeriksa perhitungan ADX Anda secara independen

Untuk memverifikasi ADX untuk diri Anda sendiri menggunakan rantai rumus di atas:

  1. Pilih n tertentu dan catat.
  2. Gunakan satu set data OHLC yang konsisten dan konfirmasikan bahwa Anda memiliki High, Low, Close yang selaras berdasarkan waktu.
  3. Hitung TR, +DM, dan −DM dengan tepat menggunakan logika kondisional yang sama.
  4. Terapkan aturan penghalusan dan inisialisasi yang sama yang digunakan oleh referensi Anda.
  5. Hitung +DI, −DI, DX, lalu haluskan DX menjadi ADX.
  6. Bandingkan keluaran antara terlebih dahulu; jika cocok, ADX akhir sangat mungkin konsisten.
Perdagangan forex dan CFD memiliki risiko besar. Informasi FoxiForex bersifat edukatif dan bukan nasihat keuangan pribadi. Penempatan bersponsor diberi label dengan jelas.