I try to understand the basic idea of copulas, however I am still struggling and hope that someone can help me.

I understood that in general a copula is a function which links several marginal distributions to a multivariate distribution. Turning this idea around: if the joint probability function H() is known, I can extract the copula. However, what I do not understand is the intuition behind the step marked by the red arrow. What is the logic behind that? My problem is also to understand the inverse cumulative density function in this context. Perhaps someone has an illustrative example to make this step more clear to me as a non-mathematician.

enter image description here


I found Coping With Copulas by Thorsten Schmidt really helped me to get a more basic understanding of copulas. As well as looking at some simple examples in R and thinking about different directions the transformations can happen.

To answer your actual question I'll attempt to describe the steps involved as simply as I can.

  • Let's say you use the copula function in R to generate two columns of correlated variables, X and Y.
  • These are output as individual observations of random variables between [0,1].
  • To get back to the "real" values of X and Y, which aren't distributed on [0,1], you make some assumptions about what distribution they do follow. For example say they both follow a standard normal distribution with mean = 0 and standard deviation = 1.
  • Go back to R and use the quantile (inverse) cummulative distribution function, qnorm(), on each column X and Y. This will convert the value from [0,1] to it's corresponding normally distributed value, somewhere in the region of [-infinity,+infinity].
  • Now you have two normally distributed random variables X and Y with a specified dependence structure thanks to your copula in the initial step.

The red arrow step ensures each variable follows the appropriate marginal distribution without actually changing the joint probability distribution.

  • $\begingroup$ Its not enough to post a link, please answer the specific question. $\endgroup$ – emcor Feb 17 '15 at 20:06
  • $\begingroup$ How about now . $\endgroup$ – Henry E Feb 18 '15 at 10:39
  • $\begingroup$ I dont see how you explain the transformation as marked in the red step. $\endgroup$ – emcor Feb 18 '15 at 11:39
  • 1
    $\begingroup$ Ok I added a last line. Any better? $\endgroup$ – Henry E Feb 19 '15 at 6:54

The best introduction to copulas I know, i.e. with rigour and intuition, is the following.

A Short, Comprehensive, Practical Guide to Copulas
Visually introducing a powerful risk management tool to generalize and stress-test correlations

  • $\begingroup$ Its not enough to post a link, please answer the specific question. $\endgroup$ – emcor Feb 17 '15 at 20:07
  • $\begingroup$ @emcor: Well, the intuition and explanation is in the paper. Then I guess the title of the question is wrong. $\endgroup$ – vonjd Feb 17 '15 at 20:16
  • $\begingroup$ That is the question: "However, what I do not understand is the intuition behind the step marked by the red arrow. What is the logic behind that?". $\endgroup$ – emcor Feb 17 '15 at 20:19

In the theory of copulas you want to model a multivariate (often bivariate) distribution and keep the marginals fixed.

Thus you have random variables $X$ and $Y$ with cdf $F_X(x) = P[X \le x]$ and $F_Y(y) = P[Y\le y]$ and you want to find some $F_{X,Y}(x,y) = P[X \le x, Y\le y]$ such that when you look at marginals you get $F_{X,Y}(x,\infty) = F_X(x)$ and the same for $Y$. Due to this whole theory this can be done by coupling the 2 distributions using another function, the copula (function).

Before we proceede note that $F_X(x)$ is just a function of $x$. We can look at the random variable $F_X(X)$. Then if $F_X$ is invertible it holds that $$ P[F(X) \le x] = P[X \le F^{-1}(x)] = F(F^{-1}(x)) = x $$ for $x \in (0,1)$ and this is the definition of a uniform distribution. So for a continuous cdf $F$ we have that $F(X)$ is uniform. On the other hand if $U$ is uniform and $F$ is a continuous cdf then $F^{-1}(U)$ has distribution $F$.

So if we want to couple the distributions $F_X$ and $F_Y$ we look at how we can describe the mutlivariate distribution of uniforms and then simply transforming them back by $F_X ^{-1}$ and $F_Y ^{-1}$.

These quite basic facts about uniforms and cdfs helps me to understand the copula approach.

If the cdf is not continuous then things get more complicated.

  • $\begingroup$ can you please explain the rationale for $F_{X,Y}(x,\infty) = F_{X}(x)$ $\endgroup$ – Neeraj Jul 1 '16 at 16:30
  • $\begingroup$ It is bit confusing $\endgroup$ – Neeraj Jul 1 '16 at 16:30
  • 1
    $\begingroup$ @Neeraj $F_{X,Y}(x,y) = P[X \le x, Y \le y]$. Thus $F_{X,Y}(x,\infty) = P[X \le x, Y \le \infty]$. Obiously the set of events $\{Y \le \infty\}$ is trivial thus $P[X \le x, Y \le \infty] = P[X \le x] = F_X(x)$. $\endgroup$ – Ric Jul 3 '16 at 9:02
  • $\begingroup$ Great, You can add this in your answer too. $\endgroup$ – Neeraj Jul 3 '16 at 19:04
  • $\begingroup$ That's a basic property of a bivariate cdf.... It should be mentioned in introductory text books... $\endgroup$ – Ric Jul 4 '16 at 6:08

There is a brief and not overly technical introduction here:


And an application of use in a trading system with full R code here:


Hope that helps!

  • 1
    $\begingroup$ Its not enough to post a link, please answer the specific question. $\endgroup$ – emcor Feb 17 '15 at 20:13

In addition to everything else said: copulas are not necessarily a structure we enforce onto a joint distribution. Any joint distribution generates some copula, which is the set of laws according to which ranks of variable $X_i$ are related to ranks of variable $X_j$. What copula modeling does is simplifying the true, complex copula structure using some standard copula family. This simplification is fine for many pricing and risk management purposes (but not all).

Contrary to talk of bivariate copulas ($N = 2$), copula methods are most successful when serving as a "lazy" way of describing big baskets of assets ($N >> 2$).


Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

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