UltraXMA: Indikator Terbaik untuk MetaTrader 5

Mike 2012.01.31 22:26 14 0 0
Lampiran

UltraXMA merupakan indikator yang berasaskan nilai integral trend daripada pelbagai purata bergerak yang serupa dengan menggunakan progresi aritmetik untuk tempoh pemulihan. Indikator ini sangat berguna untuk trader yang ingin mengenal pasti arah trend dengan lebih tepat.

Cara pengiraan purata bergerak adalah seperti berikut. Terdapat beberapa parameter input untuk indikator ini:

  • StartLength - nilai minimum awal bagi garis isyarat pertama;
  • Step - langkah perubahan tempoh;
  • StepsTotal - jumlah perubahan tempoh.

Setiap nilai tempoh dari pelbagai garis fan dikira menggunakan progresi aritmetik:

XMAPeriod(Number) = StartLength + Number*Step

di mana nilai pembolehubah Number berkisar dari sifar hingga StepsTotal. Nilai-nilai tempoh yang diperoleh ditambah ke dalam array pembolehubah dan digunakan pada setiap tick indikator untuk mendapatkan array nilai purata bergerak XMA. Arah trend semasa bagi setiap pemulihan dikira serta jumlah trend positif dan negatif untuk keseluruhan array nilai purata bergerak. Jumlah akhir trend positif dan negatif kemudiannya diproses semula dan digunakan sebagai garis indikator yang membentuk awan berwarna yang dipaparkan menggunakan kelas gaya DRAW_FILLING.

Arah trend dalam indikator ini ditentukan oleh warna awan, manakala kekuatannya ditentukan oleh lebar awan. Anda juga boleh menggunakan tahap terlebih beli (UpLevel) dan terlebih jual (DnLevel) yang ditetapkan dalam nilai peratus daripada amplitud maksimum indikator.

Anda boleh memilih algoritma pemulihan daripada sepuluh versi yang berbeza:

  1. SMA - purata bergerak sederhana;
  2. EMA - purata bergerak eksponen;
  3. SMMA - purata bergerak yang diproses;
  4. LWMA - purata bergerak berat linear;
  5. JJMA - purata adaptif JMA;
  6. JurX - pemulihan ultralinear;
  7. ParMA - pemulihan parabolik;
  8. T3 - pemulihan eksponen berganda Tillson;
  9. VIDYA - pemulihan menggunakan algoritma Tushar Chande;
  10. AMA - pemulihan menggunakan algoritma Perry Kaufman.

Perlu diingat bahawa parameter fasa untuk algoritma pemulihan yang berbeza mempunyai makna yang berbeza. Untuk JMA, ia adalah pembolehubah fasa luaran yang berubah dari -100 hingga +100. Untuk T3, ia adalah nisbah pemulihan yang didarabkan dengan 100 untuk visualisasi yang lebih baik, untuk VIDYA ia adalah tempoh osilator CMO, dan untuk AMA ia adalah tempoh EMA perlahan. Dalam algoritma lain, parameter ini tidak mempengaruhi pemulihan. Untuk AMA, tempoh EMA pantas adalah nilai tetap dan sama dengan 2 secara lalai. Nisbah kuasa peningkatan juga sama dengan 2 untuk AMA.

Indikator ini menggunakan kelas perpustakaan SmoothAlgorithms.mqh (perlu disalin ke terminal_data_folder\MQL5\Include). Penggunaan kelas-kelas tersebut telah diterangkan dengan terperinci dalam artikel "Rata-Rata Siri Harga untuk Pengiraan Pertengahan Tanpa Menggunakan Buffer Tambahan".

Parameter input indikator:

//+----------------------------------------------+
//| Parameter input indikator                    |
//+----------------------------------------------+
input ENUM_APPLIED_PRICE Applied_price=PRICE_CLOSE; // Harga yang digunakan
//----
input Smooth_Method W_Method=MODE_JJMA;     // Kaedah pemulihan
input int StartLength=3;                    // Tempoh pemulihan awal                    
input int WPhase=100;                       // Parameter pemulihan
//----  
input uint Step=5;                          // Langkah perubahan tempoh
input uint StepsTotal=10;                   // Jumlah perubahan tempoh
//----
input Smooth_Method SmoothMethod=MODE_JJMA; // Kaedah pemulihan
input int SmoothLength=3;                   // Kedalaman pemulihan                    
input int SmoothPhase=100;                  // Parameter pemulihan
input uint UpLevel=80;                      // Tahap terlebih beli
input uint DnLevel=20;                      // Tahap terlebih jual
input color UpLevelsColor=Red;              // Warna tahap terlebih beli
input color DnLevelsColor=Red;              // Warna tahap terlebih jual
input STYLE Levelstyle=DASH_;               // Gaya tahap
input WIDTH  LevelsWidth=Width_1;           // Lebar tahap       

UltraXMA

Senarai
Komen 0