bCond.simpA.param {CondCopulas}R Documentation

Test of the assumption that a conditional copulas does not vary through a list of discrete conditioning events

Description

Test of the assumption that a conditional copulas does not vary through a list of discrete conditioning events

Usage

bCond.simpA.param(
  X1,
  X2,
  partition,
  family,
  testStat = "T2c_tau",
  typeBoot = "boot.NP",
  nBootstrap = 100
)

Arguments

X1

vector of n observations of the first conditioned variable.

X2

vector of n observations of the second conditioned variable.

partition

matrix of size n * p, where p is the number of conditioning events that are considered. partition[i,j] should be the indicator of whether the i-th observation belongs or not to the j-th conditioning event.

family

family of parametric copulas used

testStat

test statistic used. Possible choices are

  • T2c_par \sum_{box} (\theta_0 - \theta(box))^2

  • T2c_tau Same as above, except that the copula family is now parametrized by its Kendall's tau instead of its natural parameter.

typeBoot

type of bootstrap used

nBootstrap

number of bootstrap replications

Value

a list containing

References

Derumigny, A., & Fermanian, J. D. (2017). About tests of the “simplifying” assumption for conditional copulas. Dependence Modeling, 5(1), 154-197. doi:10.1515/demo-2017-0011

Derumigny, A., & Fermanian, J. D. (2022) Conditional empirical copula processes and generalized dependence measures Electronic Journal of Statistics, 16(2), 5692-5719. doi:10.1214/22-EJS2075

See Also

bCond.estParamCopula for the estimation of a (conditional) parametric copula model in this framework.

bCond.simpA.CKT for a test of the simplifying assumption that all these conditional copulas are equal, based on the equality of conditional Kendall's tau (i.e. without any parametric assumption).

Tests of the simplifying assumption for conditional copulas with a continuous conditioning variable:

Examples

n = 800
Z = stats::runif(n = n)
CKT = 0.2 * as.numeric(Z <= 0.3) +
  0.5 * as.numeric(Z > 0.3 & Z <= 0.5) +
  + 0.3 * as.numeric(Z > 0.5)
family = 3
simCopula = VineCopula::BiCopSim(N = n,
  par = VineCopula::BiCopTau2Par(CKT, family = family), family = family)
X1 = simCopula[,1]
X2 = simCopula[,2]
partition = cbind(Z <= 0.3, Z > 0.3 & Z <= 0.5, Z > 0.5)

result = bCond.simpA.param(X1 = X1, X2 = X2, testStat = "T2c_tau",
  partition = partition, family = family, typeBoot = "boot.paramInd")
print(result$p_val)

n = 800
Z = stats::runif(n = n)
CKT = 0.1
family = 3
simCopula = VineCopula::BiCopSim(N = n,
  par = VineCopula::BiCopTau2Par(CKT, family = family), family = family)
X1 = simCopula[,1]
X2 = simCopula[,2]
partition = cbind(Z <= 0.3, Z > 0.3 & Z <= 0.5, Z > 0.5)

result = bCond.simpA.param(X1 = X1, X2 = X2,
  partition = partition, family = family, typeBoot = "boot.NP")
print(result$p_val)



[Package CondCopulas version 0.1.3 Index]