I am trying to do a Monte Carlo simulation and want to define a function for the conditional inverse function for the the Ali-Mikhail-Haq and the Farlie-Gumbel-Morgenstern Copula. Here is an example of the formula i am looking for enter image description here


1 Answer 1


By definition, when $(U,V)$ has a copula distribution $C,$

$$C(u,v) = \Pr(U\le u,\ V \le v).$$

To find the distribution conditional on $u$ when $C$ is differentiable at $u$ with derivative $C_u(u,v)$ for all $0\le v\le 1,$ evaluate this in the infinitesimal strip between $u$ and $u+\mathrm du$ to find

$$\Pr(u\le U \lt u +\mathrm du,\ V \le v) = C_u(u,v)\mathrm du.$$

Since the copula is supported on $[0,1],$ the conditional distribution of $V$ is

$$C_{V\mid U=u}(v) = \Pr(V\le v\mid U = u) = \frac{C_u(u,v)}{C_u(u,1)}.\tag{*}$$

Let's test this on one of your formulas; say, the family of Clayton copulas. Apparently your parameterization is

$$C(u,v;\rho) = \left(u^{-\rho} + v^{-\rho} - 1\right)^{-1/\rho}.$$

Compute the derivatives and do the algebra to simplify $(*)$ to

$$C_{V\mid U=u}(v;\rho) = \left(1 + \left(\frac{u}{v}\right)^\rho - u^\rho\right) ^ {-1 - 1/\rho}.$$

The value of its inverse at some probability $0\le q\le 1$ solves the equation $$C_{V\mid U=u}(v;\rho) = q$$ for $v.$

Doing the algebra yields

$$C^{-1}_{V\mid U=u}(q;\rho) = \left(1 - u^{-\rho} + u^{-\rho}q^{-\rho/(1+\rho)}\right)^ {-1/\rho},$$

agreeing with your first formula. So we're on the right track.

For the Ali-Mikhail-Haq family parameterized by $-1 \le \theta \le 1$ we may write

$$C(u,v;\theta) = \frac{uv}{1 - \theta(1-u)(1-v)}.$$

Now $(*)$ tells us we must solve the equation

$$q = C_{V\mid U=u}(v;\theta) = \frac{\theta v (v-1) + v}{\left(\theta(u-1)(v-1) - 1\right)^2}.$$

Upon clearing the denominator, this is a quadratic equation in $z$ -- it's unnecessary in this forum to write the formula for its roots (and often the formula is not needed). You will, of course, select the non-negative root.

The same method applies to the F-G-M family. A parameterization of its copula is given at https://stats.stackexchange.com/questions/457294;

$$C(u,v;\theta) = u v ( 1 + \theta(1-u)(1-v) ).$$

Computing $C_u$ as before and applying $(*)$ tells us we need to solve

$$q = C_{V\mid U=u}(v;\theta) = \theta(2u-1)(v-1)v + v.$$

This again is a quadratic equation, whose solution you may express or compute as you see fit. Here are some illustrations of $C_{V\mid U=u}(\ ;\theta)$ for three values of $\theta$ where $u$ ranges from $0$ (blue curves) through $1$ (purple curves).

enter image description here

NB: this solution differs from the one presented at https://stats.stackexchange.com/a/457325/919, which quotes its reference accurately. Because I used exactly the same method in all three cases, I think my result is correct.


Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.