Download MetaTrader 5

Watch how to download trading robots for free

Interesting script?
So post a link to it -
let others appraise it

You liked the script? Try it in the MetaTrader 5 terminal

2011.12.26 10:41

X2MA Transform Candles - indicator for MetaTrader 5

| English Русский 中文 Español Deutsch 日本語 Português

votes: 17


The indicator transfers the price data to the new coordinates system associated with X2MA indicator values.

The distance from High, Low, Open and Close source candlestick to X2MA moving average is used in the indicator for candlesticks parameters.

As a result, we have a candlestick chart altered by X2MA transformation allowing to perform all elements of technical analysis like a common chart. Appropriate custom and technical indicators can be applied to it. In fact, the indicator zero level is X2MA moving average location.

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".


X2MA Transform Candles

Input parameters:

//|  Indicator input parameters       |
input Smooth_Method MA_Method1=MODE_SMA;   // First smoothing averaging method 
input int Length1=12;                      // First smoothing depth                    
input int Phase1=15;                       // First smoothing parameter
input Smooth_Method MA_Method2=MODE_JJMA; // Second smoothing averaging method 
input int Length2= 5;                      // Second smoothing depth 
input int Phase2=15;                       // Second smoothing parameter
input Applied_price_ IPC=PRICE_CLOSE;       // Applied price
input int Shift=0;                         // Horizontal shift of the indicator in bars
input int PriceShift=0;                    // Vertical shift of the indicator in points
input color BidColor=Red;                  // Bid line color
input ENUM_LINE_STYLE BidStyle=STYLE_SOLID;  // Bid line style

Translated from Russian by MetaQuotes Software Corp.
Original code:

Accelerator Oscillator (AC) Accelerator Oscillator (AC)

The Acceleration/Deceleration Indicator (AC) measures acceleration and deceleration of the current driving force.

Average Directional Movement Index (ADX) Average Directional Movement Index (ADX)

The Average Directional Movement Index Indicator (ADX) helps to determine if there is a price trend.

TypeToBytes TypeToBytes

Byte-wise operation with structures and standard data types.

PriceLines PriceLines

Script for drawing a price markup.