1
$\begingroup$

I am aware of the differences between an exponential moving average and a simple moving average, with the weights of the latter being fixed and equal for each observation in the calculation compared to exponentially decaying weights for the former. Is there a rule of thumb to compare the lookback-period / formation-period of a simple moving average to the half-life of an exponential moving average? I.e., if I am working with a simple moving average of say 10 days, is there an approximate equivalent for an exponential moving average half-life? A former colleague told me once that a simple moving average is approximately equivalent to about 3x the half-life of an exponential average, but I do not recall why. He claims that e.g., if you're using a simple moving average of 10 days, the equivalent exponential moving average will have a half-life of 3.3 days. Does anyone have an analytical solution to the equivalence?

$\endgroup$
1
  • $\begingroup$ Wouldn't it be quick to check if you simply computed/retrieved and compared both values? $\endgroup$
    – AKdemy
    Jun 15, 2023 at 19:11

2 Answers 2

3
$\begingroup$

Hi: I haven't heard of that equivalence. But one other equivalence which you may be interested in is the $\rho = 2/(N+1)$ relation where N is the width of the moving average and $\rho$ is the parameter of the SES model: $\hat{y}_t = \rho \hat{y}_{t-1} + (1-\rho)y_{t}$.

The derivation of above is in Brown's book: "Smoothing, Forecasting and Prediction of Discrete Time Series". IIRC, he equates the weighted age of the observations in the moving average with that of the SES.

This is not to say that your colleague is incorrect. It might be something he-she came up with on their own. So, this is not an answer to your question but it was too long for a comment.

The half life in an SES model is obtained by setting $\rho^{halflife} = \frac{1}{2}$. This can be re-written so that one gets $halflife = \frac{log(1/2)}{log(\rho)}$. In this manner, one can obtain the halflife given the SES parameter, $\rho$.

$\endgroup$
2
  • $\begingroup$ Thanks for your comment. How do you link 'rho' to 'alpha'? Or is 'rho' equivalent to 'alpha' in your example? $\endgroup$
    – The User
    Jun 23, 2023 at 10:02
  • $\begingroup$ @The User: My apologies. The use of $\alpha$ was a typo. I meant $\rho$ but you are correct that $\alpha$ and $\rho$ are the same thing. I'm just used to using $\rho$. $\endgroup$
    – mark leeds
    Jun 25, 2023 at 2:56
1
$\begingroup$

There is no (and cannot be) any exact relationship between simple moving average (SMA) and exponential moving average (EMA). Qualitatively, they are similar for similar trailing horizons. I would argue in favor of EMA for most (or all) applications as much much more computationally efficient and API-friendly. I am not aware of a single case, in my ML/forecasting experience at least, where SMA is superior to EMA in some respects. But I would also recommend against the simple EMA update formula as used in the previous answer. Instead, a simple data structure maintaining the weighted sum of observed values, their squares, and the weights themselves supports an efficient computation of mean, standard deviation, effective number of weighted observations, and other statistics. An EMA horizon is introduced by a decaying all sums by a factor less than one. A similar data structure for multivariate observations supports EMA correlations, OLS, ridge, Lasso, and other linear models.

$\endgroup$
1
  • $\begingroup$ Hi Michael: The advantage of SES is the computational ease and that it's optimal for an ARIMA(0,1,1). But, as you mentioned, if you compare the results of the two resulting series using $\rho = \frac{2}{N+1}$ you'll see that they are quite close. So, I agree that, generally speaking, there's no big difference if one uses that relation for SES. See Brown's text for an in-depth discussion of SES. It's called "Smoothing, Forecasting and Prediction of Discrete TIme Series". $\endgroup$
    – mark leeds
    Jun 25, 2023 at 2:52

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.