Skip to content
All library documents

Simulating Correlated AR(1) Errors with a Copula

Article Quant Q&A · Author: adelm

Summary

The document outlines how to simulate multiple AR(1) series while preserving dependence between their innovations. Rather than generating each series independently, first construct joint error draws with the desired marginal distributions and a fitted copula. Sklar’s theorem connects the marginal cumulative distributions to the joint distribution through the copula.

For a bivariate example, the answer describes conditional sampling: draw one uniform variate, then draw another and transform it through the copula’s conditional inverse. Apply each marginal inverse distribution to the resulting uniform values to obtain paired error draws, which can then drive the AR(1) recursions. This preserves the specified contemporaneous dependence in the innovations and supports downstream comparisons such as duration or value-at-risk analysis. The explanation is limited to a bivariate procedure and does not specify a particular copula, estimation method, diagnostics, or treatment of dependence across time beyond the AR structure.

Key ideas

  • Simulate the joint innovations before applying the AR(1) recursions to each series.
  • A copula combines chosen marginal error distributions into a joint distribution with specified dependence.
  • Conditional sampling generates a second uniform draw based on the first through the copula’s conditional inverse.
  • Transform the paired uniforms through the inverse marginal distributions to produce correlated errors.

Tags

Full text
# Copula- AR simulation


# Copula- AR simulation












I am estimating different copulas for bond factors that i also fit AR(1) models on.

Now i would like to test and compare durations and VaRs with my model vs empiric.

But how can i simulate AR(1) series with my copula properties? I can simulate both independently but i am unsure how to proceed to do both simulatneously

I hope my question isn't too specific.

Thanks!

## Answer by emcor (score 3, accepted)

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

As you know, simulating AR(1) is to simulate the distributed error path.

Assume the bivariate errors distributed $\sim F(x),\sim F(y)$ with copula $C(u,v)$ to model their dependence.

Then the bivariate joint error distribution is given by Sklar's theorem:

$$F(x,y)=C(F(x),F(y))$$

You can simulate from this distribution using Conditional Sampling:

To obtain a realization of a bivariate Copula $C(u,v)$, one draws the first variable $u$ as random number $\sim U(0,1)$. The second variable $v$ is generated from another independent random number $z$ plugged into the inverse Copula $C^{-1}(z\,|u=u)$ under the first generated (conditional) random number $u$:

- Draw $\bar{u},\bar{z}\sim U(0,1)$

- Set $\bar{v} = C_{\bar{u}}^{-1}(\bar{z})$ (quasi-inverse Copula under $\bar{u}$, or conditional $C^{-1}(t,u\,|u=\bar{u})$ )

From this you get $$(x=F(\bar{u})^{-1},y=F(\bar{v})^{-1})$$ as your two simulated errors for the AR(1) process.

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.