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).
 A: 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.
The remaining question is, how do you obtain the parameter vectors.

*

*If you have estimated your GARCH model in a Bayesian way, you have a joint distribution of the parameter vector; just sample from it.

*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.

*Alternatively, you could use some version of bootstrap appropriate for time series to obtain a bootstraped distribution of the parameters. Sample from it.

