simpA.param | R Documentation |
This function tests the “simplifying assumption” that a conditional copula
C_{1,2|3}(u_1, u_2 | X_3 = x_3)
does not depend on the
value of the conditioning variable x_3
in a semiparametric setting,
where the conditional copula is of the form
C_{1,2|3}(u_1, u_2 | X_3 = x_3) = C_{\theta(x_3)}(u_1,u_2),
for all 0 <= u_1, u_2 <= 1
and all x_3
.
Here, (C_\theta)
is a known family of copula and \theta(x_3)
is an unknown conditional dependence parameter.
In this setting, the simplifying assumption can be rewritten as
“\theta(x_3)
does not depend on x_3
, i.e. is a constant
function of x_3
”.
simpA.param(
X1,
X2,
X3,
family,
testStat = "T2c",
typeBoot = "boot.NP",
h,
nBootstrap = 100,
kernel.name = "Epanechnikov",
truncVal = h,
numericalInt = list(kind = "legendre", nGrid = 10)
)
X1 |
vector of |
X2 |
vector of |
X3 |
vector of |
family |
the chosen family of copulas
(see the documentation of the class |
testStat |
name of the test statistic to be used.
The only choice implemented yet is |
typeBoot |
the type of bootstrap to be used. (see Derumigny and Fermanian, 2017, p.165). Possible values are
|
h |
the bandwidth used for kernel smoothing |
nBootstrap |
number of bootstrap replications |
kernel.name |
the name of the kernel |
truncVal |
the value of truncation for the integral,
i.e. the integrals are computed from |
numericalInt |
parameters to be given to
|
a list containing
true_stat
: the value of the test statistic
computed on the whole sample
vect_statB
: a vector of length nBootstrap
containing the bootstrapped test statistics.
p_val
: the p-value of the test.
Derumigny, A., & Fermanian, J. D. (2017). About tests of the “simplifying” assumption for conditional copulas. Dependence Modeling, 5(1), 154-197. \Sexpr[results=rd]{tools:::Rd_expr_doi("10.1515/demo-2017-0011")}
Other tests of the simplifying assumption:
simpA.NP
in a nonparametric setting
simpA.kendallReg
: test based on the constancy of
conditional Kendall's tau
the counterparts of these tests in the discrete conditioning setting:
bCond.simpA.CKT
(test based on conditional Kendall's tau)
bCond.simpA.param
(test assuming a parametric form for the conditional copula)
# We simulate from a conditional copula
set.seed(1)
N = 500
Z = rnorm(n = N, mean = 5, sd = 2)
conditionalTau = -0.9 + 1.8 * pnorm(Z, mean = 5, sd = 2)
simCopula = VineCopula::BiCopSim(N=N , family = 1,
par = VineCopula::BiCopTau2Par(1 , conditionalTau ))
X1 = qnorm(simCopula[,1], mean = Z)
X2 = qnorm(simCopula[,2], mean = - Z)
result <- simpA.param(
X1 = X1, X2 = X2, X3 = Z, family = 1,
h = 0.03, kernel.name = "Epanechnikov", nBootstrap = 5)
print(result$p_val)
# In practice, it is recommended to use at least nBootstrap = 100
# with nBootstrap = 200 being a good choice.
set.seed(1)
N = 500
Z = rnorm(n = N, mean = 5, sd = 2)
conditionalTau = 0.8
simCopula = VineCopula::BiCopSim(N=N , family = 1,
par = VineCopula::BiCopTau2Par(1 , conditionalTau ))
X1 = qnorm(simCopula[,1], mean = Z)
X2 = qnorm(simCopula[,2], mean = - Z)
result <- simpA.param(
X1 = X1, X2 = X2, X3 = Z, family = 1,
h = 0.08, kernel.name = "Epanechnikov", nBootstrap = 5)
print(result$p_val)
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.