Concept
TEMA
TEMA is a Trend concept. The Library holds 3 implementations, each one a working definition you can pull into Quant.
Top TEMA indicators
3 total
What is TEMA?
TEMA (triple exponential moving average) is a reduced-lag smoother introduced by Patrick Mulloy in 1994, alongside its sibling DEMA. Despite the name it is not an EMA applied three times; that would multiply the lag. Instead, Mulloy cascades three EMAs (an EMA of price, an EMA of that EMA, and an EMA of that) and combines them as three times the first, minus three times the second, plus the third. The combination cancels much of the smoothing lag while keeping most of the noise reduction.
On a chart TEMA hugs price noticeably tighter than an EMA of the same length and turns sooner after reversals. The price of that responsiveness is overshoot: because the lag-cancelling combination behaves partly like an extrapolation, TEMA can hook beyond price at sharp turns, and it wiggles more in chop. It is also worth separating from TRIX, which triple-smooths an EMA and then plots its rate of change as an oscillator; TEMA stays on the price scale as an overlay.
How to calculate TEMA
TEMA uses one length setting N for all three smoothing stages.
- 1Compute EMA1: an EMA of price with length N.
- 2Compute EMA2 as an EMA of EMA1, then EMA3 as an EMA of EMA2, both with the same length N.
- 3Combine them: TEMA = 3 × EMA1 - 3 × EMA2 + EMA3.
- 4Read it like any overlay average: longer N gives a smoother, slower line, while the lag-cancelling combination keeps it closer to price than a plain EMA of equal length.
How traders use it
- In crossover systems: a fast and slow TEMA pair, or TEMA against a slower conventional average, aims to signal turns earlier than an equivalent EMA pair; earlier also means more failed signals inside ranges.
- As a trend filter: trading only in the direction of a rising or falling TEMA, often taken from a higher timeframe, with the reduced lag getting the filter onside sooner after a genuine turn.
- In ribbons and multi-length stacks, where several TEMAs of increasing length fan out in trends and compress when the trend weakens.
- As a lower-lag smoothing stage inside other indicators, for example smoothing a momentum or volume series where a standard EMA's delay is the main complaint.
TEMA vs similar averages
DEMA: DEMA is the same lag-cancelling idea one order lower: two cascaded EMAs combined as twice the first minus the second. TEMA cancels more lag and hugs price tighter, at the cost of a little more overshoot.
TRIX: TRIX also builds on triple exponential smoothing, but it plots the one-bar rate of change of the triple-smoothed EMA as an oscillator around zero. TEMA is a price overlay, not an oscillator.
EMA: A single EMA of the same length is smoother and never overshoots, but it lags well behind TEMA at turns. TEMA trades some of that stability for earlier response.
Related concepts · Moving-average lineage
Concept family
Trend
100 concepts mapped · 88 in the Library
TEMA FAQ
Is TEMA just an EMA applied three times?
No. Triple-smoothing an EMA would produce an extremely laggy line. TEMA computes three cascaded EMAs but combines them as 3 × EMA1 - 3 × EMA2 + EMA3, which cancels much of the accumulated lag. The name refers to the three EMAs used in the construction, not to smoothing price three times.
What is the difference between TEMA and DEMA?
Both are Mulloy's lag-cancelled averages. DEMA uses two cascaded EMAs, TEMA uses three, so TEMA responds faster and tracks price more tightly at the same length, while DEMA is a little calmer. Neither is strictly better: faster response means earlier real signals and more false ones in choppy conditions.
Does lower lag make TEMA better than other moving averages?
Not by itself. Lag reduction is a trade, not a free upgrade: TEMA reacts sooner to genuine turns and also to noise, and it can overshoot at sharp reversals. Whether that nets out positive depends on the market, the timeframe, and the rules around it, which is a testing question rather than a property of the formula.
Build TEMA your way.
Quant writes, tests, and refines it with you — then it runs on LuxAlgo charting or ports to TradingView.


