mlgarch {lgarch} | R Documentation |
Estimate a multivariate CCC-log-GARCH(1,1) model
Description
Fit a multivariate Constant Conditional Correlation (CCC) log-GARCH(1,1) model with multivariate Gaussian Quasi Maximum Likelihood (QML) via the VARMA representation, see Sucarrat, Gronneberg and Escribano (2013). Zero-values on y are treated as missing values, as suggested in Sucarrat and Escribano (2013). Estimation is via the nlminb
function, whereas a numerical estimate of the Hessian is obtained with optimHess
for the computation of the variance-covariance matrix
Usage
mlgarch(y, arch = 1, garch = 1, xreg = NULL, initial.values = NULL,
lower = NULL, upper = NULL, nlminb.control = list(), vcov = TRUE,
objective.penalty = NULL, solve.tol = .Machine$double.eps, c.code = TRUE)
Arguments
y |
a numeric matrix, typically financial returns or regression errors |
arch |
the arch order (i.e. an integer equal to or greater than 0). The default is 1. NOTE: in the current version the order cannot be greater than 1 |
garch |
the garch order (i.e. an integer equal to or greater than 0). The default is 1. NOTE: in the current version the order cannot be greater than 1 |
xreg |
a vector or a matrix with the conditioning variables. The x-variables enter in each of the equations |
initial.values |
NULL (default) or a vector with the initial values of the VARMA representation |
lower |
NULL (default) or a vector with the lower bounds of the parameter space (of the VARMA representation). If NULL, then the values are automatically chosen |
upper |
NULL (default) or a vector with the upper bounds of the parameter space (of the VARMA representation). If NULL, then the values are automatically chosen |
nlminb.control |
list of control options passed on to the |
vcov |
logical. If TRUE (default), then the variance-covariance matrix is computed. The FALSE options makes estimation faster, but the variance-covariance matrix cannot be extracted subsequently |
objective.penalty |
NULL (default) or a numeric value. If NULL, then the log-likelihood value associated with the initial values is used. Sometimes estimation can result in NA and/or +/-Inf values (this can be fatal for simulations). The value objective.penalty is the value returned by the log-likelihood function |
solve.tol |
The function |
c.code |
logical. TRUE (default) is (much) faster, since it makes use of compiled C-code |
Value
A list of class 'mlgarch'
Note
Empty
Author(s)
Genaro Sucarrat, http://www.sucarrat.net/
References
Sucarrat and Escribano (2013), 'Unbiased QML Estimation of Log-GARCH Models in the Presence of Zero Returns', MPRA Paper 50699: http://mpra.ub.uni-muenchen.de/50699/
Sucarrat, Gronneberg and Escribano (2013), 'Estimation and Inference in Univariate and Multivariate Log-GARCH-X Models When the Conditional Density is Unknown', MPRA Paper 49344: http://mpra.ub.uni-muenchen.de/49344/
See Also
lgarchSim
, coef.lgarch
, fitted.lgarch
, logLik.lgarch
, print.lgarch
, residuals.lgarch
and vcov.lgarch
Examples
##simulate 1000 observations from a 2-dimensional
##ccc-log-garch(1,1) w/default parameter values:
set.seed(123)
y <- mlgarchSim(1000)
##estimate a 2-dimensional ccc-log-garch(1,1):
mymod <- mlgarch(y)
##print results:
print(mymod)
##extract ccc-log-garch coefficients:
coef(mymod)
##extract Gaussian log-likelihood (zeros excluded) of the ccc-log-garch model:
logLik(mymod)
##extract Gaussian log-likelihood (zeros excluded) of the varma representation:
logLik(mymod, varma=TRUE)
##extract variance-covariance matrix:
vcov(mymod)
##extract and plot the fitted conditional standard deviations:
sdhat <- fitted(mymod)
plot(sdhat)
##extract and plot standardised residuals:
zhat <- residuals(mymod)
plot(zhat)