Copula simulation

78 Views Asked by At

Let $(X_1,X_2)$ be a bivariate random vector where $X_1 \sim \mathcal{N}(\mu_1,\sigma_1^2)$ and $X_2 \sim \mathcal{E}(\lambda)$. We suppose that the dependence function is given by the following copula: $$ C(u_1,u_2) = u_1u_2(1 + \theta (1 - u_1)(1 - u_2))$$ where $\theta \in [-1,1]$. I would like to simulate the random vector but i can't achieve to do so.
My idea is to start by simulating $(U_1,U_2)$ (uniforms in $[0,1]$) which have $C$ as cdf : Simulate $U_1$ then simulate $U_2 | U_1$ which has the following cdf : \begin{align*} \mathbb{P}(U_2 \leq u_2 | U_1 = u_1) & = \lim_{\epsilon \to 0} \frac{P(U_2 \leq u_2, U_1 \in [u_1, u_1 + \epsilon])}{P(U_1 \in [u_1, u_1 + \epsilon])} \\ & = \lim_{\epsilon \to 0} \frac{C(u_1+\epsilon,u_2) - C(u_1,u_2)}{\epsilon} \\ & = \partial_{u_1}C(u_1,u_2) \\ & = u_2(1+ \theta(1-u_1)(1-u_2)) -\theta u_1u_2(1-u_2) \\ & = \theta u_2 ^2(2u_1 - 1) + u_2(1 + \theta - 2\theta u_1) \end{align*} My idea is to simulate $U_2 | U_1$ by inverting $\mathbb{P}(U_2 \leq u_2 | U_1 = u_1)$, but it doesn't seem to be invertible. Any other idea? Thanks

1

There are 1 best solutions below

1
On

Your calculation seems to be correct, and the function you obtained is invertible. You can write it as

$$ \mathbb P(U_2\le u_2\mid U_1=u_1)=\theta(2u_1-1)(u_2^2-u_2)+u_2\;, $$

and thus

$$ \frac{\partial}{\partial u_2}\mathbb P(U_2\le u_2\mid U_1=u_1)=\theta(2u_1-1)(2u_2-1)+1\ge0\;, $$

since each of the factors in the first term is in $[-1,1]$, with equality obtaining at most at one of the boundary points $u_2=0$ or $u_2=1$. Since the function has positive derivative over $(0,1)$, it is invertible over $[0,1]$.