# Simulate GARCH volatility conditional on return series

Is it possible to simulate GARCH volatility series conditional on observed return series? What I want is that my simulated GARCH volatility will incorporate uncertainty of the estimated parameters but will not simulate the return series (it will use the observed return in the equation).

This should be possible. Suppose for simplicity we are dealing with a GARCH(1,1) model a with constant mean: \begin{aligned} x_t &= \mu+\varepsilon_t, \\ \varepsilon_t &= \sigma_t z_t, \\ \sigma_t^2 &= \omega+\alpha\varepsilon_{t-1}^2+\beta\sigma_{t-1}^2, \\ z_t &\sim i.i.D(0,1) \end{aligned} where $$D(0,1)$$ is some distribution with zero mean and unit variance. For a given parameter vector $$(\mu,\omega,\alpha,\beta)$$ and an initial estimate of the conditional variance $$\hat\sigma_0^2$$, you can "filter" the series (not sure "filter" is the right term) starting from \begin{aligned} \hat\sigma_1^2 &:= \omega+\alpha\hat\varepsilon_0^2+\beta\hat\sigma_0^2, \\ \hat\sigma_2^2 &:= \omega+\alpha\hat\varepsilon_1^2+\beta\hat\sigma_1^2, \\ &\dots \\ \hat\sigma_T^2 &:= \omega+\alpha\hat\varepsilon_{T-1}^2+\beta\hat\sigma_{T-1}^2. \\ \end{aligned} This way you get the fitted conditional variances $$(\hat\sigma_1^2,\dots,\hat\sigma_T^2)$$. You can write a simple for loop from 1 to T for that. Let us call it the inner loop.
To incorporate the uncertainty of estimated parameters, you need to obtain a set of $$M$$ parameter vectors $$(\mu_1,\omega_1,\alpha_1,\beta_1), \dots, (\mu_M,\omega_M,\alpha_M,\beta_M)$$ and do the above for each of them. This could be done by writing an outer for loop from 1 to M around the previous loop.
• If you have estimated the model using maximum likelihood, you could think in a fiducial way. Invoking asymptotics, you have a joint normal distribution with a mean vector equal to the point estimates $$(\hat\mu,\hat\omega,\hat\alpha,\hat\beta)$$ and a covariance matrix given by the estimated covariance matrix of the parameters. Sample from it.