This function allows to compare bivariate copula models across a number of families w.r.t. the fit statistics log-likelihood, AIC, and BIC. For each family, the parameters are estimated by maximum likelihood.
BiCopEstList(u1, u2, familyset = NA, weights = NA, rotations = TRUE, ...)
A list containing
a list of BiCop()
objects corresponding to the
`familyset`` (only families corresponding to the sign of the empirical
Kendall's tau are used),
a data frame containing the log-likelihoods, AICs, and BICs of all the fitted models.
Data vectors of equal length with values in \([0,1]\).
Vector of bivariate copula families to select from.
The vector has to include at least one bivariate copula
family that allows for positive and one that allows for negative dependence.
If familyset = NA
(default), selection among all possible families is
performed. Coding of bivariate copula families:
0
= independence copula
1
= Gaussian copula
2
= Student t copula (t-copula)
3
= Clayton copula
4
= Gumbel copula
5
= Frank copula
6
= Joe copula
7
= BB1 copula
8
= BB6 copula
9
= BB7 copula
10
= BB8 copula
13
= rotated Clayton copula (180 degrees; survival Clayton'') \cr `14` = rotated Gumbel copula (180 degrees;
survival Gumbel'')
16
= rotated Joe copula (180 degrees; survival Joe'') \cr `17` = rotated BB1 copula (180 degrees;
survival BB1'')
18
= rotated BB6 copula (180 degrees; survival BB6'')\cr `19` = rotated BB7 copula (180 degrees;
survival BB7'')
20
= rotated BB8 copula (180 degrees; ``survival BB8'')
23
= rotated Clayton copula (90 degrees)
`24` = rotated Gumbel copula (90 degrees)
`26` = rotated Joe copula (90 degrees)
`27` = rotated BB1 copula (90 degrees)
`28` = rotated BB6 copula (90 degrees)
`29` = rotated BB7 copula (90 degrees)
`30` = rotated BB8 copula (90 degrees)
`33` = rotated Clayton copula (270 degrees)
`34` = rotated Gumbel copula (270 degrees)
`36` = rotated Joe copula (270 degrees)
`37` = rotated BB1 copula (270 degrees)
`38` = rotated BB6 copula (270 degrees)
`39` = rotated BB7 copula (270 degrees)
`40` = rotated BB8 copula (270 degrees)
`104` = Tawn type 1 copula
`114` = rotated Tawn type 1 copula (180 degrees)
`124` = rotated Tawn type 1 copula (90 degrees)
`134` = rotated Tawn type 1 copula (270 degrees)
`204` = Tawn type 2 copula
`214` = rotated Tawn type 2 copula (180 degrees)
`224` = rotated Tawn type 2 copula (90 degrees)
`234` = rotated Tawn type 2 copula (270 degrees)
Numerical; weights for each observation (optional).
If TRUE
, all rotations of the families in
familyset
are included.
further arguments passed to BiCopEst()
.
Thomas Nagler
First all available copulas are fitted using maximum likelihood estimation.
Then the criteria are computed for all available copula families (e.g., if
u1
and u2
are negatively
dependent, Clayton, Gumbel, Joe, BB1, BB6, BB7 and BB8 and their survival
copulas are not considered) and the family with the minimum value is chosen.
For observations \(u_{i,j},\ i=1,...,N,\ j=1,2,\) the AIC of a bivariate copula family \(c\) with parameter(s)
\(\boldsymbol{\theta}\) is defined as $$AIC := -2 \sum_{i=1}^N
\ln[c(u_{i,1},u_{i,2}|\boldsymbol{\theta})] + 2k, $$ where \(k=1\) for one parameter
copulas and \(k=2\) for the two parameter t-, BB1, BB6, BB7 and BB8
copulas. Similarly, the BIC is given by $$BIC := -2 \sum_{i=1}^N
\ln[c(u_{i,1},u_{i,2}|\boldsymbol{\theta})] + \ln(N)k. $$ Evidently, if the BIC
is chosen, the penalty for two parameter families is stronger than when
using the AIC.
Akaike, H. (1973). Information theory and an extension of the maximum likelihood principle. In B. N. Petrov and F. Csaki (Eds.), Proceedings of the Second International Symposium on Information Theory Budapest, Akademiai Kiado, pp. 267-281.
Schwarz, G. E. (1978). Estimating the dimension of a model. Annals of Statistics 6 (2), 461-464.
BiCop()
,
BiCopEst()
## compare models
data(daxreturns)
comp <- BiCopEstList(daxreturns[, 1], daxreturns[, 4])
Run the code above in your browser using DataLab