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

2010.02.03 14:02

Triple Exponential Moving Average (TEMA) - indicator for MetaTrader 5

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

votes: 21
tema.mq5 (3.29 KB)view

Triple Exponential Moving Average (TEMA) technical indicator was developed by Patrick Mulloy and published in the "Technical Analysis of Stocks & Commodities" magazine.

The principle of its calculation is similar to Double Exponential Moving Average (DEMA). 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.

TEMA can be used instead of traditional moving averages. It can be used for smoothing price data, as well as for smoothing other indicators.

Triple Exponential Moving Average Indicator

Triple Exponential Moving Average Indicator


First DEMA is calculated, then the error of price deviation from DEMA is calculated:

err(i) = Price(i) - DEMA(Price, N, ii)


  • err(i) - current DEMA error;
  • Price(i) - current price;
  • DEMA(Price, N, i) - current DEMA value from Price series with N period.

Then add value of the exponential average of the error and get TEMA:

TEMA(i) = DEMA(Price, N, i) + EMA(err, N, i) = DEMA(Price, N, i) + EMA(Price - EMA(Price, N, i), N, i) =
= DEMA(Price, N, i) + EMA(Price - DEMA(Price, N, i), N, i) = 3 * EMA(Price, N, i) - 3 * EMA2(Price, N, i) + EMA3(Price, N, i)


  • EMA(err, N, i) - current value of the exponential average of the err error;
  • EMA2(Price, N, i) - current value of the double sequential price smoothing;
  • EMA3(Price, N, i) - current value of the triple sequential price smoothing.
Double Exponential Moving Average (DEMA) Double Exponential Moving Average (DEMA)

It is used for smoothing price series and is applied directly on a price chart of a financial security.

Fractal Adaptive Moving Average (FrAMA) Fractal Adaptive Moving Average (FrAMA)

The advantage of FRAMA is the possibility to follow strong trend movements and to sufficiently slow down at the moments of price consolidation.

Variable Index Dynamic Average (VIDYA) Variable Index Dynamic Average (VIDYA)

This oscillator measures the ratio between the sum of positive increments and sum of negative increments for a certain period.

Triple Exponential Average (TRIX) Triple Exponential Average (TRIX)

It's an oscillator of the overbought/oversold market conditions. It can also be used as the Momentum indicator. Triple smoothing is used for removing the cyclic components in price movements with the period less than that of TRIX.