Watch how to download trading robots for free
Find us on Telegram!
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
Views:
8142
Rating:
(13)
Published:
2011.11.23 15:42
Updated:
2023.03.29 13:43
\MQL5\Include\
x2ma_nrtr.mq5 (9.83 KB) view
Need a robot or indicator based on this code? Order it on Freelance Go to Freelance

In this indicator the values of the moving average are corrected with the help of NRTR algorithm (Nick Rypock Trailing Reverse).

The Expert Advisor of GODZILLA that took the third place at the Automated Trading Championship 2006 is based on the breakout trading system developed with the use of this indicator readings.

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 NRTR

Indicator 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
//---- for JJMA Phase1 is changed at the range -100 ... +100 impacting transition process quality;
//---- for VIDIA Phase1 is the CMO period, for AMA it is a period of the slow moving average
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
//---- for JJMA Phase2 is changed at the range -100 ... +100 impacting transition process quality;
//---- for VIDIA Phase2 is the CMO period, for AMA it is a period of the slow moving average
input Applied_price_ IPC=PRICE_CLOSE;     // Price constant
/* the indicator calculation is performed at that price (1-CLOSE, 2-OPEN, 3-HIGH, 4-LOW, 
  5-MEDIAN, 6-TYPICAL, 7-WEIGHTED, 8-SIMPLE, 9-QUARTER, 10-TRENDFOLLOW, 11-0.5 * TRENDFOLLOW.) */
input uint Step=30;                       // Flat oscillations size
//---- this parameter determines the size of oscillations perceived as flat(discretization digital pitch in points)
input uint Max_DEV=55;                    // Terminal deviation of price from X2MA that does not change the value of the average
input int Shift=0;                        // Horizontal shift of the indicator in bars
input int PriceShift=0;                   // Vertical shift of the indicator in points

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

Adaptive CG Oscillator Adaptive CG Oscillator

Adaptive CG Oscillator is a CG Oscillator that can adapt to constantly changing market cycles of a real financial asset.

XXDPO XXDPO

Detrended Price Oscillator (DPO) shows the market overbought/oversold states and also can be used for getting buy/sell signals.

iBeta iBeta

The indicator of covariation, correlation and Beta ratio of two symbols.

Stochastic CG Oscillator Stochastic CG Oscillator

Stochastic CG Oscillator is a stochastic oscillator, the values of which are calculated based not on a price series, but on CG Oscillator indicator values.