17.05 - Triangular Moving Average - Teradata Database

Teradata Vantage™ - Advanced SQL Engine Analytic Functions

Advanced SQL Engine
Teradata Database
June 2020
Programming Reference

The triangular moving average (TMA) differs from the simple moving average in that it is double-smoothed; that is, averaged twice. Double-smoothing keeps the triangular moving average from responding to new data points as fast as the simple moving average. For an average that responds quickly to new data points, use the simple moving average or exponential moving average.

With MAvgType ('T'), the MovingAverage function uses this procedure:
  1. Compute the window size, N:

    N=ceil(window_size +1)/2

    The value window_size is specified by the WindowSize syntax element.

  2. Compute the simple moving average of each target column, using this formula:

    SMA i = (V1 + V2 + … + VN)/N

    The function calculates SMA i on the ith window of the target column from the start of the row.

    V i is the value of the target column at index i in the window.

  3. Compute the triangular moving average by computing the simple moving average with window size N on the values obtained in step 2, using this formula:

    TMA = (SMA1 + SMA2 + … + SMAN)/N

    The function writes the cumulative moving average values computed for the first n rows, where n is less than N, to the output table.