Skip to content
All library documents

Forecasting Covariance in a Bivariate CCC-GARCH Model

Article Quant Q&A · Author: Alejandro Andrade

Summary

The document explains how to produce a one-step-ahead covariance forecast for a bivariate constant conditional correlation GARCH model. It describes the model as two univariate GARCH variance processes combined with a shared estimated correlation. Each asset’s next conditional variance is forecast from its variance equation, using the latest squared residual and conditional variance, together with the model parameters. The covariance forecast then multiplies the two forecast standard deviations by the estimated conditional correlation.

This provides the covariance structure needed for a two-asset risk calculation such as VaR, assuming the individual GARCH models and constant correlation are appropriate. Forecasts beyond one step require iterating the variance forecasts. The response focuses on variances and covariance; although the question also asks about forecasting the mean, it does not explain a conditional mean model or provide package-specific R instructions. It also gives no empirical validation or guidance on estimation, diagnostics, or the limitations of assuming correlation remains constant.

Key ideas

  • A bivariate CCC-GARCH model combines two univariate conditional variance forecasts with a constant correlation.
  • Each next-step variance uses the latest squared residual and conditional variance in its GARCH recursion.
  • The covariance forecast equals the product of the predicted standard deviations and the estimated correlation.
  • Multi-step variance forecasts require iterating the variance recursion.
  • The response does not specify a conditional mean forecast or assess the constant-correlation assumption.

Tags

Full text
# CCC-Garch predict


# CCC-Garch predict












So I'm trying to measure the VaR of 2 stock with a multivariate GARCH model, so im using the CCC model. I need to predict the standard-diviation and the mean but the `ccgarch` package doesn't have a command for that. Is the a way in R for doing it?

## Answer by Richard Hardy (score 0, accepted)

https://quant.stackexchange.com/a/24536

A bivariate CCC-GARCH model consists of two univariate GARCH models and a scalar conditional correlation. You would predict the individual conditional variances $\hat\sigma^2_{1,t+1}$ and $\hat\sigma^2_{2,t+1}$ from the individual univariate GARCH models (which is straightforward for one step ahead, and you iterate beyond that):

$$ \hat\sigma^2_{i,t+1} = \omega + \alpha_{i,1} \hat\varepsilon^2_{i,t} + \beta_{i,1} \hat\sigma^2_{i,t} $$

for $i=1,2$. You would predict the conditional covariance $\hat\sigma_{ij,t+1}$ by multiplying the square roots of the predicted conditional variances to the estimated conditional correlation:

$$ \hat\sigma_{ij,t+1} = \sqrt{\hat\sigma^2_{i,t+1}} \cdot \sqrt{\hat\sigma^2_{j,t+1}} \cdot \hat\rho. $$

Shown in full with attribution under the source's licence. Licence: CC BY-SA 4.0 (Stack Exchange)

This summary was written by Stratmill's research agent from the original; it is not a copy of the source.