Momentum Indicators

TRIX: Triple Smoothed Momentum Oscillator | AlfaTactix

📖 6 min read

📝 1,003 words

🏷️ Momentum Indicators

In this page: what TRIX is, how it works, when to use it, a practical example with code, and a bonus tip.

Use TRIX in a real strategy—no code required

Create a free account to save your progress and build strategies with this indicator and 80+ others in minutes. Backtest, then export to MQL5.


TRIX on a price chart: illustration of the indicator and how it is used in technical analysis
TRIX – chart illustration

TRIX Indicator Explanation

The TRIX is a momentum oscillator that applies triple exponential smoothing to the rate of change of price, creating a highly smoothed momentum indicator that reduces noise and identifies trend changes. Developed by Jack Hutson in the early 1980s and introduced in his technical analysis work, TRIX oscillates around a zero line and is calculated by applying exponential moving averages three times to the rate of change. The indicator helps identify momentum shifts and potential trend reversals with minimal false signals, making it particularly useful for traders seeking to filter out market noise while maintaining sensitivity to trend changes.

How TRIX Works: TRIX is calculated by first computing the rate of change (ROC) of price, then applying exponential smoothing three times to this ROC value. The formula involves: First, calculate a single EMA of price. Then, calculate an EMA of that EMA. Finally, calculate an EMA of the second EMA. The TRIX value is then the rate of change of this triple-smoothed EMA: TRIX = [(Triple EMA - Previous Triple EMA) / Previous Triple EMA] × 100. The result oscillates around zero, with positive values indicating upward momentum and negative values indicating downward momentum. The triple smoothing significantly reduces noise, making TRIX less prone to false signals than standard momentum oscillators.

When to Use TRIX:

  • Trend Change Identification: TRIX is highly effective at identifying trend changes when it crosses the zero line, providing clear entry and exit signals. A TRIX crossing above zero indicates potential uptrend, while a TRIX crossing below zero indicates potential downtrend.
  • Momentum Confirmation: The indicator helps confirm momentum strength and direction. Positive TRIX values with increasing magnitude indicate strengthening upward momentum, while negative TRIX values with increasing magnitude indicate strengthening downward momentum.
  • Divergence Analysis: TRIX divergence occurs when price makes new highs or lows while TRIX fails to confirm, often signaling potential trend reversals. Bullish divergence (price makes lower low, TRIX makes higher low) suggests upward momentum building, while bearish divergence (price makes higher high, TRIX makes lower high) suggests downward momentum building.

Advantages:

  • Provides highly smoothed momentum signals with minimal noise, making it less prone to false signals than standard momentum oscillators. The triple smoothing effectively filters out short-term price fluctuations.
  • Works effectively across multiple timeframes and asset classes, including stocks, forex, commodities, and cryptocurrencies. The indicator is particularly useful for medium to long-term trend identification.
  • Helps identify trend changes early through zero line crossovers and divergence analysis, providing clear signals for entry and exit points. The reduced noise makes it easier to identify genuine trend changes.

Limitations:

  • TRIX can lag behind price movements due to the triple smoothing, potentially missing early trend changes. The extensive smoothing means the indicator responds more slowly to price movements than less smoothed indicators.
  • The indicator may produce fewer signals than standard momentum oscillators, which can be both an advantage (fewer false signals) and a disadvantage (fewer trading opportunities). Traders seeking more frequent signals may find TRIX too conservative.
  • TRIX does not provide information about overbought or oversold conditions on its own, only momentum direction and strength. Traders should combine it with other indicators for more comprehensive analysis.

In summary, TRIX is a valuable momentum oscillator that provides highly smoothed momentum signals with minimal noise, making it ideal for traders seeking to identify trend changes while filtering out market noise. For comprehensive understanding, refer to Hutson's original work on TRIX, Investopedia's TRIX guide, TradingView's TRIX documentation, and academic research on momentum oscillators in technical analysis published in journals such as the Journal of Financial Markets and the Review of Financial Studies.

Practical Example: Using the TRIX Indicator in a Trading Strategy

The TRIX is a momentum oscillator used to identify trend changes and momentum shifts through triple-smoothed rate of change analysis. In a trading strategy, the TRIX indicator helps traders make entry and exit decisions based on momentum direction and zero line crossovers.

Scenario: You're creating a trend-following strategy for Ethereum (ETH/USDT) on a 4-hour chart. You want to buy when TRIX crosses above zero (indicating upward momentum) and sell when it crosses below zero (indicating downward momentum), assuming the trend will continue in the direction of the momentum.

Strategy Logic:

  • Calculate the TRIX(15) using a 15-period triple exponential smoothing. The TRIX oscillates around zero, with positive values indicating upward momentum and negative values indicating downward momentum. The triple smoothing reduces noise and provides clearer signals.
  • Buy signal: When TRIX crosses above zero (shifting from negative to positive), indicating potential uptrend and upward momentum building.
  • Sell signal: When TRIX crosses below zero (shifting from positive to negative), indicating potential downtrend and downward momentum building.

Backtrader Example:

import backtrader as bt

class TRIXTrendStrategy(bt.Strategy):
    params = dict(
        trix_period=15
    )
    
    def __init__(self):
        # Calculate TRIX: triple-smoothed rate of change
        ema1 = bt.ind.EMA(period=self.p.trix_period)
        ema2 = bt.ind.EMA(ema1, period=self.p.trix_period)
        ema3 = bt.ind.EMA(ema2, period=self.p.trix_period)
        self.trix = bt.ind.ROC(ema3, period=1)
        
    def next(self):
        if not self.position:
            # Buy when TRIX crosses above zero (positive momentum)
            if (self.trix[0] > 0 and self.trix[-1] <= 0):
                self.buy()
        else:
            # Sell when TRIX crosses below zero (negative momentum)
            if (self.trix[0] < 0 and self.trix[-1] >= 0):
                self.sell()

# Usage
cerebro = bt.Cerebro()
cerebro.addstrategy(TRIXTrendStrategy)

Expected Outcome: By using the TRIX indicator, your strategy identifies trend changes and momentum shifts with minimal noise, helping you enter trades when momentum is building and exit when momentum is weakening. This approach leads to better trend-following entries, improved signal quality, and enhanced consistency by filtering out false signals through triple smoothing.

💡 Bonus Tip

Consider using TRIX divergence as a confirmation signal. When price makes a new high but TRIX makes a lower high, it suggests weakening upward momentum and potential bearish reversal. This technique, documented in technical analysis literature, can significantly improve the accuracy of TRIX-based trading strategies by identifying trend exhaustion before price reversals occur.

Using the TRIX indicator ensures your strategy captures momentum shifts effectively with minimal noise, improving entry and exit timing based on highly smoothed momentum analysis.

Use TRIX in a real strategy—no code required

Create a free account to save your progress and build strategies with this indicator and 80+ others in minutes. Backtest, then export to MQL5.

Try Strategy Builder

Use this indicator in Strategy Builder — free

Create free account