Penulis asli:
dm34@mail.ru
UltraRSI adalah indikator yang berbasis pada RSI (Relative Strength Index) dengan analisis beberapa garis sinyal. Algoritma perhitungan garis sinyal adalah sebagai berikut. Kita memiliki parameter input indikator sebagai data sumber:
- StartLength - nilai awal minimum untuk garis sinyal pertama;
- Step - langkah perubahan periode;
- StepsTotal - jumlah perubahan periode.
Setiap nilai periode dari banyaknya garis sinyal dihitung menggunakan progresi aritmatika:
SignalPeriod(Number) = StartLength + Number * Step,
di mana nilai variabel Number berkisar dari nol hingga StepsTotal. Nilai-nilai periode yang diperoleh ditambahkan ke array variabel dan digunakan pada setiap tick indikator untuk mendapatkan array nilai RSI yang dihaluskan. Arah tren saat ini untuk setiap penghalusan dihitung, dan juga jumlah tren positif dan negatif untuk seluruh array nilai RSI yang dihaluskan ditentukan. Jumlah akhir tren positif dan negatif kemudian dihaluskan dan digunakan sebagai garis indikator yang membentuk awan berwarna yang ditampilkan dengan bantuan kelas gaya DRAW_FILLING.
Arah tren dalam indikator ini ditentukan oleh warna awan, sedangkan kekuatannya ditentukan oleh lebar awan. Anda dapat menggunakan level overbought (UpLevel) dan oversold (DnLevel) yang ditetapkan dalam persen dari amplitudo maksimum indikator.
Algoritma penghalusan dapat dipilih dari sepuluh versi yang mungkin:
- 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 algoritma Tushar Chande;
- AMA - smoothing dengan algoritma Perry Kaufman.
Perlu dicatat bahwa parameter Phase1 dan Phase2 memiliki arti yang sepenuhnya berbeda untuk berbagai algoritma penghalusan. Untuk JMA, itu adalah variabel Phase eksternal yang berubah dari -100 hingga +100. Untuk T3, itu adalah rasio penghalusan yang dikalikan dengan 100 untuk visualisasi yang lebih baik, untuk VIDYA itu adalah periode oscillator CMO dan untuk AMA itu adalah periode EMA lambat. Dalam algoritma lain, parameter ini tidak mempengaruhi penghalusan. Untuk AMA, periode EMA cepat adalah nilai tetap dan sama dengan 2 secara default. Rasio kenaikan pangkat juga sama dengan 2 untuk AMA.
Indikator ini menggunakan kelas SmoothAlgorithms.mqh (harus disalin ke terminal_data_folder\MQL5\Include). Penggunaan kelas-kelas tersebut telah dijelaskan secara rinci dalam artikel "Averaging Price Series for Intermediate Calculations Without Using Additional Buffers".
Parameter input indikator:
//+----------------------------------------------+ //| Parameter input indikator | //+----------------------------------------------+ input int RSI_Period=13; // periode indikator RSI input ENUM_APPLIED_PRICE Applied_price=PRICE_CLOSE; // Harga yang diterapkan //---- input Smooth_Method W_Method=MODE_JJMA; // Metode penghalusan input int StartLength=3; // Periode penghalusan awal input int WPhase=100; // Parameter penghalusan //---- input uint Step=5; // Langkah perubahan periode input uint StepsTotal=10; // Jumlah perubahan periode //---- input Smooth_Method SmoothMethod=MODE_JJMA; // Metode penghalusan input int SmoothLength=3; // Kedalaman penghalusan input int SmoothPhase=100; // Parameter penghalusan //---- input uint UpLevel=80; // Level overbought, %% input uint DnLevel=20; // Level oversold, %% input color UpLevelsColor=Blue; // Warna level overbought input color DnLevelsColor=Blue; // 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