Suppose I have the following model:

$$r_t=\sigma_t * \epsilon_t$$

where $r_t$ is the return at time t, $\sigma_t$ is the volatility, the model used to model this volatility is an exponentially weighted moving average with known parameter $\lambda$. $\epsilon_t$ is a random variable distributed according to the hyperbolic distribution with parameters $\alpha, \beta , \mu, \delta$.

First question: How do I estimate this model?

Do I

  1. Since $\lambda$ is known, calculate the $\hat{\sigma}_t$.
  2. Calculate $r_t/\hat{\sigma}_t$ which give the so called standardized residuals.
  3. Using the standardized residuals estimate the parameters of the hyperbolic distribution with classical ML.


  1. Include the $\hat{\sigma}_t$ in the log-likelihood of the hyperbolic distribution and maximize this, so this could be called a "joint" estimation. Since not the normal ML is done, but the ML with the estimated $\sigma$ included.

Second question: Suppose the volatility is modeled by an ARCH process.

Do I have to use an R package which estimates all parameters jointly, so the output give me the values of the ARCH process AND the values of the hyperbolic distribution?

Or can I use a "normal" ARCH command (which will assume the $\epsilon$ to be N(0,1) distributed (I guess) calculate the $\sigma$. Then do like above, calculate the standardized residuals by calculating $r_t/\sigma_t$ and use these to estimate an hyperbolic distribution using ML. What do you think about this "divided" approach?

  • $\begingroup$ did my answer help you ? $\endgroup$
    – Malick
    Jan 27, 2014 at 16:25
  • $\begingroup$ I would draw attention, that in many situations, just "fitting" (not "estimating") model is needed. Fitting in the sense that we won't need to obtain variance of parameters and so their p-values. Minimization of MSE is enought and is straightforward even in the case of family of GARCH model (but computationally demanding and multiple restarts are needed to make sure), MSE is ok, as it is M-estimator. After fitting model we can check its predictive power and goodness of fitness to train date, to get first glimpse about its usefullness. Its like fast prototyping. $\endgroup$
    – Qbik
    Nov 18, 2014 at 12:09

2 Answers 2


I would suggest writing the joint density as the product of the conditional densities then estimate parameters using an optimization package.

The joint density is given by

$$f(r_0, \ldots, r_T) = f(r_0) \prod_{t=1}^T f(r_t|r_0, \ldots, r_{t-1})$$

then the log likelihood function is

$$L = \log(f(r_0)) + \sum_{t=1}^T \log(f(r_t | r_0, \ldots, r_{t-1}) )$$

You may have some issues trying to optimize this function because of the number of parameters in your hyperbolic errors. These parameters may share quite a bit of information and lead to very flat slowly converging likelihood surfaces. This happens frequently with student T distribution when doing joint estimation of $\sigma$ and $\nu$ parameters.

See page 17 of Ruey S Tsay Analysis of Financial Time Series (2nd Ed) for another similarly brief discussion with the normal distribution as an example

  • $\begingroup$ I think you are right, this looks like an overparameterised model $\endgroup$
    – Kiwiakos
    Jul 21, 2014 at 22:13

Your model is wrong , there are no innovations errors in EWMA models. Indeed the EWMA model belongs to the moving average class of estimators. Then to obtain $\sigma_{t}$ you just need $\lambda$ and $r_{t}$ : The volatility is given by : $\sigma =\sqrt{(1-\lambda)\sum_{t=1}^{T} \lambda^{t-1}(r_{t}-r)^{2}} $.(remark: there is no subscript $t$ associated with the volatility term: it is an unconditional volatility process) . Loosely speaking, EWMA allows us to compute the long term average variance .

It is based on an i.i.d returns model : we obtain a subscript $t$ after estimation because the estimate change over time but in fact there is no conditional variance process.

The way you presented your model is specific for ARCH type models (conditional variance process) such as :

conditional mean process : $r_{t} = \sigma_{t} \epsilon_{t}$

conditional variance process $\sigma_{t} =.... Garch,Figarch,Aparch...$

where $\epsilon_{t}$ follows a specific distirbution.

ARCH and Moving averages models are "concurents" models to estimate volatility and correlations, they can't be applied simultaneously.

Ps:As far as i know, in MLE estimation $\sigma_{t}$ is always integrated in the Likelihood function.

  • $\begingroup$ in other words :in garch models : volatility reacts to errors terms shocks; whereas in EWMA volatility reacts to returns changes. $\endgroup$
    – Malick
    Jan 22, 2014 at 17:25
  • $\begingroup$ I've got impression that you support first answer to first question (calculate std residual and use ML to estimate hyperbolic dist parameters). Am I right? $\endgroup$
    – lowtech
    Jan 24, 2014 at 17:55
  • $\begingroup$ why did you say that model is wrong? Is it just given as the problem condition? $\endgroup$
    – lowtech
    Jan 24, 2014 at 17:57
  • $\begingroup$ your model is ok if the volatility is modeled by an ARCH process (as in your second question, in this case estimate sigma with mle ).If you use moving average type model you have to assume returns are i.i.d (same variance) WHICH is not the case in your top first model (r =s*e).If you really want to use EWMA then you just use lambda and returns and you obtain directly sigma (estimate) using EWMA formula. It is a tricky point, you could read "practical financial exonometrics" by Alexander carol p123 about it and of course read carfully riskmetrics technical document (1996). $\endgroup$
    – Malick
    Jan 24, 2014 at 19:24

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.