Learn R Programming

copBasic (version 1.7.1)

vuongCOP: Vuong's Procedure for Parametric Copula Comparison

Description

Perform the Vuong's Procedure following Joe (2015, pp. 257--258). Consider two copula densities $f_1 = c_1(u,v; \Theta_1)$ and $f_2 = c_2(u,v; \Theta_2)$ for two different bivariate copulas $\mathbf{C}_1(\Theta_1)$ and $\mathbf{C}_2(\Theta_2)$ having respective parameters $\Theta$ that provide the closest Kullback-Leibler divergence from the true copula density $g(u,v)$. The difference of the Kullback-Leibler divergence (kullCOP) of the two copulas from the true copula density can be measured for a sample of size $n$ and bivariate sample realizations ${u_i, v_i}$ by $$\hat{D}_{12} = n^{-1}\sum_{i=1}^n D_i\mbox{,}$$ where $\hat{D}_{12}$ is referred to in the copBasic package as Vuong's $D$ and $D_i$ is defined as $$D_i = \log\biggl[\frac{f_1(u_i, v_i; \Theta_2)}{f_2(u_i, v_i; \Theta_1)}\biggr]\mbox{.}$$ The variance of $\hat{D}_{12}$ can be estimated by $$\hat\sigma^2_{12} = (n-1)^{-1}\sum_{i=1}^n (D_i - \hat{D}_{12})^2\mbox{.}$$ The sample estimate and variance are readily turned into the $100{{\times}}(1 - \alpha)$ confidence interval by $$\hat{D}^{(\mathrm{lo})}_{12} < \hat{D}_{12} < \hat{D}^{(\mathrm{hi})}_{12}\mbox{,}$$ where, using the quantile function of the Standard Normal distribution [$\Phi^{(-1)}(t)$] for nonexceedance probability $t$, the confidence interval is $$\hat{D}_{12}-\Phi^{(-1)}(1-\alpha){\times}\hat\sigma_{12}/\sqrt{n} < \hat{D}_{12} < \hat{D}_{12}+\Phi^{(-1)}(1-\alpha){\times}\hat\sigma_{12}/\sqrt{n}\mbox{.}$$ Joe (2015, p. 258) reports other interval forms based (1) on the Akaike (AIC) correction and (2) on the Schwarz (BIC) correction, which are defined for AIC as $$\mathrm{AIC} = \hat{D}_{12} - (2n)^{-1}\log(n)\biggl[\mathrm{dim}(\Theta_2) - \mathrm{dim}(\Theta_1)\biggr]\pm\Phi^{(-1)}(1-\alpha){\times}\hat\sigma_{12}/\sqrt{n}\mbox{,}$$ and for BIC as $$\mathrm{BIC} = \hat{D}_{12} - (2n)^{-1}\log(n)\biggl[\mathrm{dim}(\Theta_2) - \mathrm{dim}(\Theta_1)\biggr]\pm\Phi^{(-1)}(1-\alpha){\times}\hat\sigma_{12}/\sqrt{n}\mbox{.}$$ The AIC and BIC corrections incorporate the number of parameters in the copula and for all else being equal the copula with the fewer parameters is preferable. If the two copulas being compared have equal number of parameters than the AIC and BIC equate to $\hat{D}_{12}$ and the same confidence interval because the difference $[\mathrm{dim}(\Theta_2) - \mathrm{dim}(\Theta_1)]$ is zero.

Joe (2015, p. 258) reports that these three intervals can be used for diagnostic inference as follows. If an interval contains 0 (zero), then copulas $\mathbf{C}_1(\Theta_1)$ and $\mathbf{C}_2(\Theta_2)$ are not considered significantly different. If the interval does not contain 0, then copula $\mathbf{C}_1(\Theta_1)$ or $\mathbf{C}_2(\Theta_2)$ is the better fit depending on whether the interval is completely below 0 (thus $\mathbf{C}_1(\Theta_1)$ better fit) or above 0 (thus $\mathbf{C}_2(\Theta_2)$ better fit), respectively. Joe (2015) goes on the emphasize that the procedure compares different [copulas] and assesses whether they provide similar fits to the data. [The procedure] does not assess whether [either copula] is a good enough fit.

Usage

vuongCOP(u, v=NULL, cop1=NULL, cop2=NULL, para1=NULL, para2=NULL,
                    alpha=0.05, method=c("D12", "AIC", "BIC"), ...)

Arguments

u
Nonexceedance probability $u$ in the $X$ direction;
v
Nonexceedance probability $v$ in the $Y$ direction and if NULL then u is treated as a two column Rdata.frame;
cop1
A copula function corresponding to copula $f_1$ in Vuong's Procedure;
para1
Vector of parameters or other data structure, if needed, to pass to the copula $f_1$;
cop2
A copula function corresponding to copula $f_2$ in Vuong's Procedure;
para2
Vector of parameters or other data structure, if needed, to pass to the copula $f_2$;
alpha
The $\alpha$ in Vuong's Procedure, which results in the $100{\times}(1 - \alpha)$ confidence interval (two-tail);
method
The interval to evaluate as to position of the respective statistic form the comparison of the two copulas;
...
Additional arguments to pass to the densityCOP function.

Value

  • An Rlist is returned having the following components:
  • titleA descriptive title of the procedure;
  • resultA textual description of the result of Vuong's Procedure;
  • D12An Rdata.frame containing the lower and upper bounds of Vuong's $D$ at the respective confidence interval percentage along with $\hat{D}_{12}$ and $\sigma^2_{12}$;
  • AICAn Rdata.frame containing the lower and upper bounds of Vuong's $\mathrm{AIC}$ at the respective confidence interval percentage along with $\mathrm{AIC}$; and
  • BICAn Rdata.frame containing the lower and upper bounds of Vuong's $\mathrm{BIC}$ at the respective confidence interval percentage along with $\mathrm{BIC}$.

encoding

utf8

concept

  • Vuong procedure
  • Akaike
  • AIC
  • BIC
  • Vuong
  • Kullback-Leibler

References

Joe, H., 2015, Dependence modeling with copulas: Boca Raton, CRC Press, 462 p.

Nelsen, R.B., 2006, An introduction to copulas: New York, Springer, 269 p.

Salvadori, G., De Michele, C., Kottegoda, N.T., and Rosso, R., 2007, Extremes in Nature---An approach using copulas: Springer, 289 p.

See Also

densityCOP, kullCOP, simCOP

Examples

Run this code
# See extended code listings and discussion in the Note section

Run the code above in your browser using DataLab