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:
3268
Rating:
(22)
Published:
2012.01.20 11:45
Updated:
2017.09.06 10:14
\MQL5\Include\IncOnArray\ \MQL5\Indicators\
MQL5 Freelance Need a robot or indicator based on this code? Order it on Freelance Go to Freelance

The CTemaOnArray class is intended for calculation of TEMA (Triple Exponential Moving Average) on an indicator buffer.

Usage:

The Init() method with the following parameters is called in the OnInit() function of the indicator:

The Solve() method with the following parameters is called in the OnCalculate() function:

  • const int aRatesTotal is the rates_total variable from the OnCalculate() function parameters;
  • const int aPrevCalc is the prev_calculated variable from the OnCalculate() function parameters;
  • double aData[] is a buffer with data for the indicator calculation;
  • double aM1[] is an intermediate buffer for calculations;
  • double aM2[] is an intermediate buffer for calculations;
  • double aM3[] is an intermediate buffer for calculations;
  • double aTEMA[] is the buffer with calculated values of the indicator.
Additional methods:
  • int BarsRequired() returns the minimum number of bars required for the indicator calculation;
  • string Name() returns a string with the indicator name;

Test_TemaOnArray.mq5 is an indicator demonstrating how to use the CTemaOnArray class. The IncTemaOnArray file must be located in the MQL5\Include\IncOnArray directory of the terminal data folder (the IncOnArray folder must be created). The CMAOnArray class for the IncMAOnArray file is required for this class for work.

Triple Exponential Moving Average Technical Indicator (TEMA) was developed by Patrick Mulloy and published in the "Technical Analysis of Stocks & Commodities" magazine. The principle of its calculation is similar to DEMA (Double Exponential Moving Average). The name "Triple Exponential Moving Average" does not very correctly reflect its algorithm. This is a unique blend of the single, double and triple exponential smoothing average providing the smaller lag than each of them separately.

An example of using the CTemaOnArray class

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

DinapoliTargets DinapoliTargets

The indicator draws a grid of possible future levels of price.

VQ bars VQ bars

Trend indicator that sets color dots on a price chart according to a trend direction.

DinapoliTargets_Full DinapoliTargets_Full

This version of the DinapoliTargets_Full indicator is convenient with its capability to be draw for any bar of a chart, what allows seeing the whole picture of the market behavior relative to the indicator levels on each bar. Apparently this indicator can be most useful when analyzing a strategy in the offline mode.

IncDemaOnArray IncDemaOnArray

The CDemaOnArray class is intended for calculation of DEMA (Double Exponential Moving Average) on an indicator buffer.