Build status Linux Windows Build status Coverage Status CRAN version CRAN downloads

Vine copulas are a flexible class of dependence models consisting of bivariate building blocks (see e.g., Aas et al., 2009). You can find a comprehensive list of publications and other materials on vine-copula.org.

This package is the R API to the C++ library vinecopulib, a header-only C++ library for vine copula models based on Boost and Eigen.

It provides high-performance implementations of the core features of the popular VineCopula R library, in particular inference algorithms for both vine copula and bivariate copula models. Advantages over VineCopula are
* a sleaker and more modern API, * shorter runtimes, especially in high dimensions, * nonparametric and multi-parameter families.

As VineCopula, the package is primarily made for the statistical analysis of vine copula models. The package includes tools for parameter estimation, model selection, simulation, and visualization. Tools for estimation, selection and exploratory data analysis of bivariate copula models are also provided. Please see the API documentation for a detailed description of all functions.

Table of contents

How to install

You can install:

Package overview

Below, we list most functions and features you should know about. As usual in copula models, data are assumed to be serially independent and lie in the unit hypercube.

Bivariate copula modeling: bicop_dist and bicop

Vine copula modeling: vinecop_dist and vinecop

Bivariate copula families

In this package several bivariate copula families are included for bivariate and multivariate analysis using vine copulas. It provides functionality of elliptical (Gaussian and Student-t) as well as Archimedean (Clayton, Gumbel, Frank, Joe, BB1, BB6, BB7 and BB8) copulas to cover a large range of dependence patterns. For Archimedean copula families, rotated versions are included to cover negative dependence as well. Additionally, nonparametric families are also supported.

type name name in R
- Independence “indep”
Elliptical Gaussian “gaussian”
Student t “student”
Archimedean Clayton “clayton”
Gumbel “gumbel”
Frank “frank”
Joe “joe”
Clayton-Gumbel (BB1) “bb1”
Joe-Gumbel (BB6) “bb6”
Joe-Clayton (BB7) “bb7”
Joe-Frank (BB8) “bb8”
Nonparametric Transformation kernel “tll”

Note that several convenience vectors of families are included: * "all" contains all the families * "parametric" contains the parametric families (all except "tll") * "nonparametric" contains the nonparametric families ("indep" and "tll") * "one_par" contains the parametric families with a single parameter ("gaussian", "clayton", "gumbel", "frank", and "joe") * "two_par" contains the parametric families with two parameters ("student", "bb1", "bb6", "bb7", and "bb8") * "elliptical" contains the elliptical families * "archimedean" contains the archimedean families * "BB" contains the BB families * "itau" families for which estimation by Kendall’s tau inversion is available ("indep","gaussian", "student","clayton", "gumbel", "frank", "joe")

The following table shows the parameter ranges of bivariate copula families with one or two parameters:

Copula family par[1] par[2]
Gaussian (-1, 1) -
Student t (-1, 1) (2,Inf)
Clayton (0, Inf) -
Gumbel [1, Inf) -
Frank R \ {0} -
Joe (1, Inf) -
Clayton-Gumbel (BB1) (0, Inf) [1, Inf)
Joe-Gumbel (BB6) [1 ,Inf) [1, Inf)
Joe-Clayton (BB7) [1, Inf) (0, Inf)
Joe-Frank (BB8) [1, Inf) (0, 1]


Aas, K., C. Czado, A. Frigessi, and H. Bakken (2009). Pair-copula constructions of multiple dependence. Insurance: Mathematics and Economics 44 (2), 182-198.