BiCopSelect {VineCopula} | R Documentation |
Selection and Maximum Likelihood Estimation of Bivariate Copula Families
Description
This function selects an appropriate bivariate copula family for given bivariate copula data using one of a range of methods. The corresponding parameter estimates are obtained by maximum likelihood estimation.
Usage
BiCopSelect(
u1,
u2,
familyset = NA,
selectioncrit = "AIC",
indeptest = FALSE,
level = 0.05,
weights = NA,
rotations = TRUE,
se = FALSE,
presel = TRUE,
method = "mle"
)
Arguments
u1 , u2 |
Data vectors of equal length with values in |
familyset |
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 |
selectioncrit |
Character indicating the criterion for bivariate copula
selection. Possible choices: |
indeptest |
Logical; whether a hypothesis test for the independence of
|
level |
Numeric; significance level of the independence test (default:
|
weights |
Numerical; weights for each observation (optional). |
rotations |
If |
se |
Logical; whether standard error(s) of parameter estimates is/are
estimated (default: |
presel |
Logical; whether to exclude families before fitting based on symmetry properties of the data. Makes the selection about 30% faster (on average), but may yield slightly worse results in few special cases. |
method |
indicates the estimation method: either maximum
likelihood estimation ( |
Details
Copulas can be selected according to the Akaike and Bayesian Information
Criteria (AIC and BIC, respectively). 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.
Additionally a test for independence can be performed beforehand.
Value
An object of class BiCop()
, augmented with the following
entries:
se , se2 |
standard errors for the parameter estimates (if
|
nobs |
number of observations, |
logLik |
log likelihood |
AIC |
Aikaike's Informaton Criterion, |
BIC |
Bayesian's Informaton Criterion, |
emptau |
empirical value of Kendall's tau, |
p.value.indeptest |
p-value of the independence test. |
Note
For a comprehensive summary of the fitted model, use
summary(object)
; to see all its contents, use str(object)
.
The parameters of the Student t and BB copulas are restricted (see
defaults in BiCopEst()
to avoid being to close to their limiting
cases.
Author(s)
Eike Brechmann, Jeffrey Dissmann, Thomas Nagler
References
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.
Brechmann, E. C. (2010). Truncated and simplified regular vines and their
applications. Diploma thesis, Technische Universitaet Muenchen.
https://mediatum.ub.tum.de/?id=1079285.
Manner, H. (2007). Estimation and model selection of copulas with an application to exchange rates. METEOR research memorandum 07/056, Maastricht University.
Schwarz, G. E. (1978). Estimating the dimension of a model. Annals of Statistics 6 (2), 461-464.
See Also
BiCop()
,
BiCopEst()
,
RVineStructureSelect()
,
RVineCopSelect()
,
BiCopIndTest()
,
Examples
## Example 1: Gaussian copula with large dependence parameter
par <- 0.7
fam <- 1
dat1 <- BiCopSim(500, fam, par)
# select the bivariate copula family and estimate the parameter(s)
cop1 <- BiCopSelect(dat1[, 1], dat1[, 2], familyset = 1:10,
indeptest = FALSE, level = 0.05)
cop1 # short overview
summary(cop1) # comprehensive overview
str(cop1) # see all contents of the object
## Example 2: Gaussian copula with small dependence parameter
par <- 0.01
fam <- 1
dat2 <- BiCopSim(500, fam, par)
# select the bivariate copula family and estimate the parameter(s)
cop2 <- BiCopSelect(dat2[, 1], dat2[, 2], familyset = 0:10,
indeptest = TRUE, level = 0.05)
summary(cop2)
## Example 3: empirical data
data(daxreturns)
cop3 <- BiCopSelect(daxreturns[, 1], daxreturns[, 4], familyset = 0:10)
summary(cop3)