estimate.copula {HAC} | R Documentation |
Estimation of Hierarchical Archimedean Copulae
Description
The function estimates the parameters and determines the structure of Hierarchical Archimedean Copulae.
Usage
estimate.copula(X, type = 1, method = 1, hac = NULL, epsilon = 0,
agg.method = "mean", margins = NULL, na.rm = FALSE, max.min = TRUE, ...)
Arguments
X |
a |
type |
defines the copula family, see |
method |
the estimation method. Select between quasi Maximum Likelihood |
hac |
a |
epsilon |
scalar |
agg.method |
if |
margins |
specifies the margins. The data matrix is assumed to contain the values of the marginal distributions by default, i.e. |
na.rm |
boolean. If |
max.min |
boolean. If |
... |
further arguments passed to or from other methods, e.g. |
Value
A hac object is returned.
References
Genest, C., Ghoudi, K., and Rivest, L. P. 1995, A Semiparametric Estimation Procedure of Dependence Parameters in Multivariate Families of Distributions, Biometrika 82, 543-552.
Gorecki, J., Hofert, M. and Holena, M. 2014, On the Consistency of an Estimator for Hierarchical Archimedean Copulas, In Talaysova, J., Stoklasa, J., Talaysek, T. (Eds.) 32nd International Conference on Mathematical Methods in Economics, Olomouc: Palacky University, 239-244.
Joe, H. 2005, Asymptotic Efficiency of the Two-Stage Estimation Method for Copula-Based Models, Journal of Multivariate Analysis 94(2), 401-419.
Okhrin, O., Okhrin, Y. and Schmid, W. 2013, On the Structure and Estimation of Hierarchical Archimedean Copulas, Journal of Econometrics 173, 189-204.
Okhrin, O. and Ristig, A. 2014, Hierarchical Archimedean Copulae: The HAC
Package", Journal of Statistical Software, 58(4), 1-20, doi: 10.18637/jss.v058.i04.
Okhrin, O., Ristig, A., Sheen J. and Trueck, S. 2015, Conditional Systemic Risk with Penalized Copula, SFB 649 Discussion Paper 2015-038, Sonderforschungsbereich 649, Humboldt University, Germany.
Examples
# define the copula model
tree = list(list("X1", "X5", 3), list("X2", "X3", "X4", 4), 2)
model = hac(type = 1, tree = tree)
# sample from copula model
x = rHAC(100, model)
# in the following case the true model is binary approximated
est.obj = estimate.copula(x, type = 1, method = 1, epsilon = 0)
plot(est.obj)
# consider also the aggregation of the variables
est.obj = estimate.copula(x, type = 1, method = 1, epsilon = 0.2)
plot(est.obj)
# full ML estimation to yield more precise parameter
est.obj.full = estimate.copula(x, type = 1, method = 2, hac = est.obj)
# recursive ML estimation leads to almost identical results
est.obj.r = estimate.copula(x, type = 1, method = 3)