UltraXMA adalah indikator yang didasarkan pada nilai integral dari tren yang diambil dari beberapa moving average dengan periode yang dihaluskan menggunakan progresi aritmetika.
Algoritma perhitungan moving average pada indikator ini memanfaatkan beberapa parameter sebagai data sumber:
- StartLength - nilai awal minimum dari garis sinyal pertama;
- Step - langkah perubahan periode;
- StepsTotal - jumlah perubahan periode.
Setiap nilai periode dari garis-garis fan dihitung menggunakan progresi aritmetika:
XMAPeriod(Number) = StartLength + Number*Step
di mana nilai dari variabel Number berkisar dari nol hingga StepsTotal. Nilai periode yang diperoleh ditambahkan ke dalam array variabel dan digunakan pada setiap tick indikator untuk mendapatkan array nilai moving average fan dari XMA. Arah tren saat ini untuk masing-masing smoothing dihitung bersama dengan jumlah tren positif dan negatif dari seluruh array nilai moving average fan. Jumlah akhir dari tren positif dan negatif dihaluskan kembali dan digunakan sebagai garis indikator yang membentuk awan berwarna yang ditampilkan dengan menggunakan kelas gaya DRAW_FILLING.
Arah tren dalam indikator ini ditentukan oleh warna awan, sementara kekuatannya ditentukan oleh lebar awan. Anda juga dapat menggunakan level overbought (UpLevel) dan oversold (DnLevel) yang ditetapkan dalam nilai persentase dari amplitudo maksimum indikator.
Algoritma smoothing dapat dipilih dari sepuluh versi yang tersedia:
- SMA - Simple Moving Average;
- EMA - Exponential Moving Average;
- SMMA - Smoothed Moving Average;
- LWMA - Linear Weighted Moving Average;
- JJMA - JMA Adaptive Average;
- JurX - Ultralinear Smoothing;
- ParMA - Parabolic Smoothing;
- T3 - Tillson's Multiple Exponential Smoothing;
- VIDYA - Smoothing dengan menggunakan algoritma Tushar Chande;
- AMA - Smoothing dengan menggunakan algoritma Perry Kaufman.
Perlu dicatat bahwa parameter fase untuk berbagai algoritma smoothing memiliki arti yang sangat berbeda. Untuk JMA, variabel fase eksternal bervariasi dari -100 hingga +100. Untuk T3, ini adalah rasio smoothing yang dikalikan dengan 100 untuk visualisasi yang lebih baik, untuk VIDYA ini adalah periode osilator CMO dan untuk AMA ini adalah periode EMA lambat. Pada algoritma lainnya, parameter ini tidak mempengaruhi smoothing. Untuk AMA, periode EMA cepat adalah nilai tetap dan sama dengan 2 secara default. Rasio pengangkatan juga sama dengan 2 untuk AMA.
Indikator ini menggunakan kelas dari library SmoothAlgorithms.mqh (harus disalin ke folder terminal_data_folder\MQL5\Include). Penggunaan kelas ini telah dijelaskan secara mendetail dalam artikel "Averaging Price Series for Intermediate Calculations Without Using Additional Buffers".
Parameter input indikator:
//+----------------------------------------------+ //| Parameter input indikator | //+----------------------------------------------+ input ENUM_APPLIED_PRICE Applied_price=PRICE_CLOSE; // Harga yang diterapkan //---- input Smooth_Method W_Method=MODE_JJMA; // Metode smoothing input int StartLength=3; // Periode smoothing awal input int WPhase=100; // Parameter smoothing //---- input uint Step=5; // Langkah perubahan periode input uint StepsTotal=10; // Jumlah perubahan periode //---- input Smooth_Method SmoothMethod=MODE_JJMA; // Metode smoothing input int SmoothLength=3; // Kedalaman smoothing input int SmoothPhase=100; // Parameter smoothing input Applied_price_ IPC=PRICE_CLOSE; // Harga yang diterapkan //---- input uint UpLevel=80; // Level overbought input uint DnLevel=20; // Level oversold input color UpLevelsColor=Red; // Warna level overbought input color DnLevelsColor=Red; // Warna level oversold input STYLE Levelstyle=DASH_; // Gaya level input WIDTH LevelsWidth=Width_1; // Lebar level

Postingan terkait
- Indikator Open Range Breakout untuk MetaTrader 5: Strategi Trading yang Efektif
- Volume Profile + Range v6.0: Indikator Penting untuk MetaTrader 5
- iSpread: Indikator Spread untuk Pair Trading di MetaTrader 5
- Indikator Divergence Awesome Oscillator untuk MetaTrader 5
- Panduan Lengkap Volume Profile + Range v6.0 untuk MetaTrader 5