Watch how to download trading robots for free
Find us on Twitter!
Join our fan page
Interesting script?
So post a link to it -
let others appraise it
You liked the script? Try it in the MetaTrader 5 terminal
Indicators

XdinMA - indicator for MetaTrader 5

Published by:
Nikolay Kositsin
Views:
6293
Rating:
(18)
Published:
2011.12.29 09:59
Updated:
2023.03.29 13:43
colorxdinma.mq5 (8.11 KB) view
xdinma.mq5 (7.56 KB) view
\MQL5\Include\
MQL5 Freelance Need a robot or indicator based on this code? Order it on Freelance Go to Freelance

Real author:

dimeon

The moving average, calculated using the simplest algebraic combination of two other Moving Averages with different periods.

In this case the formula of the average looks as follows:

XdinMA(PeriodMA1,  PeriodMA2) = MA(PeriodMA1) - 2*MA(PeriodMA2)  

Smoothing algorithms can be selected out of ten possible versions:

  1. SMA - simple moving average;
  2. EMA - exponential moving average;
  3. SMMA - smoothed moving average;
  4. LWMA - linear weighted moving average;
  5. JJMA - JMA adaptive average;
  6. JurX - ultralinear smoothing;
  7. ParMA - parabolic smoothing;
  8. T3 - Tillson's multiple exponential smoothing;
  9. VIDYA - smoothing with the use of Tushar Chande's algorithm;
  10. AMA - smoothing with the use of Perry Kaufman's algorithm.

It should be noted that Phase1 and Phase2 parameters have completely different meaning for different smoothing algorithms. For JMA it is an external Phase variable changing from -100 to +100. For T3 it is a smoothing ratio multiplied by 100 for better visualization, for VIDYA it is a CMO oscillator period and for AMA it is a slow EMA period. In other algorithms these parameters do not affect smoothing. For AMA fast EMA period is a fixed value and is equal to 2 by default. The ratio of raising to the power is also equal to 2 for AMA.

The indicator uses SmoothAlgorithms.mqh library classes (must be copied to the terminal_data_folder\MQL5\Include). The use of the classes was thoroughly described in the article "Averaging Price Series for Intermediate Calculations Without Using Additional Buffers".

This indicator was first implemented in MQL4 and published in Code Base 25.04.2011.

XdinMA

Translated from Russian by MetaQuotes Ltd.
Original code: https://www.mql5.com/ru/code/700

IncERDOnArray IncERDOnArray

CERDOnArray class is designed to calculate the Efficiency Ratio (ER) used in the Adaptive Moving Average (AMA) considering price movement direction. When the price is moving upwards the indicator has positive values, when it is moving downwards, - negative ones.

IncEROnArray IncEROnArray

CEROnArray class is designed to calculate the Efficiency Ratio (ER) used in the Adaptive Moving Average (AMA). The example of use of the CEROnArray class is presented.

GetFontName GetFontName

Function module for more convenient font selection display in the indicator input parameters. To free the indicator user from the necessity to manually enter a font name some changes to the code should be inserted.

IncCMOOnArray IncCMOOnArray

CMOOnArray class is designed for calculation of CMO (Chande Momentum Oscillator) values on indicator buffers. The example of use of the CMOOnArray class is presented.