# NxEMA - Exponentially-weighted moving (rolling/running) average

Returns the exponentially weighted moving (rolling/running) average using the previous N data points.

## Syntax

NxEMA(X, Order, N, Variant, Return)

X
is the univariate time series data (a one-dimensional array of cells (e.g., rows or columns)).
Order
is the time order in the data series (i.e., the first data point's corresponding date (earliest date = 1 (default), latest date = 0)).
Order Description
1 Ascending (the first data point corresponds to the earliest date) (default).
0 Descending (the first data point corresponds to the latest date).
N
is the smoothing period expressed in the number of data points (e.g., days).
Variant
is the variant/type of the exponentially weighted moving average (i.e., 0 = Simple (default), 1 = Double, 2 = Triple, 3 = Zero-lagged). If missing or omitted, a simple exponentially weighted moving average (i.e., Variant = 0) is assumed.
Value Description
0 Plain/simple exponentially weighted moving average (EMA).
1 Double exponentially weighted moving average (D-EMA).
2 Triple exponentially weighted moving average (T-EMA).
3 Zero-lagged exponential-weighted moving average (ZLEMA).
Return
is return type of the function: 0 = last/most recent value (default), 1 = filtered time series (array.
Value Description
0 Return smoothed value of the Last/most-recent observation.
1 Return the whole smoothed time series (array).

## Remarks

1. The time series is homogeneous or equally spaced.
2. The time series may include missing values (e.g., #N/A) at either end.
3. The formula of exponential moving average definition is expressed in technical analysis terms as follows: $$\textrm{EMA}_t = \textrm{EMA}_{t-1} + \alpha \times ( x_t - \textrm{EMA}_{t-1})$$ Where:
• $\textrm{EMA}_t$ is the exponential moving average at time $t$.
• $x_t$ is the value of the time series at time $t$.
• $\alpha$ is the smoothing factor (between 0 and 1) that represents the degree of weighting decrease. For EMA, the $\alpha$ is expressed as follows: $$\alpha = \frac{2}{N+2}$$ Where:
• $N$ is the smoothing period expressed in the number of data points (e.g., days)
• The exponential moving average with a smooth period of N data points is expressed by N-period EMA.
4. The double exponential moving average (aka. DEMA or D-EMA) is expressed as follows: $$\textrm{D-EMA}_t = 2 \times \textrm{EMA}_t -\textrm{EMA}(\textrm{EMA})_t$$ Where:
• $\textrm{EMA}(\textrm{EMA})$ is the exponential moving average of the exponential moving average.
5. The triple exponential moving average (aka. TEMA or T-EMA) is expressed as follows: $$\textrm{T-EMA} = 3\times \textrm{EMA}_t -3\times\textrm{EMA}(\textrm{EMA})_t + \textrm{EMA}(\textrm{EMA}(\textrm{EMA}))_t$$
6. For zero-lag exponential moving average (ZLEMA), $$k = (N-1)/2$$ $$Y_t = x_t + (x_t - x_{t-k})$$ $$\textrm{ZLEMA}_t = \textrm{EMA}_t^N (Y_t)$$ Where:
• $k$ is the number of periods used to remove the cumulative effect of the moving average.
• $Y_t$ is the de-lagged data. Data is de-lagged by removing the data from k-periods ago, thus removing the cumulative effect of the moving average.
7. In the case the smoothing period ($N$) is an even number, then $k$ and $Y_t$ are calculated as follows: $$k = \frac{N}{2}$$ $$Y_t = 2x_t - \left(\frac{x_{t-k}+x_{t-k-1}}{2}\right)$$
8. The ZLEMA technical indicator was created by John Ehlers and Ric Way.
9. The NxEMA function is available starting with version 1.66 PARSON.