Equation by equation estimation of a multivariate multiplicative TV-GARCH-X model with dnamic conditional correlations. For each variance equation, the long-term or unconditional component (TV) and the short-term or conditional variance component (GARCH-X) are estimated separately using maximization by parts, where the iterative algorithm proceeds until convergence. Conditional on the variance estimates, the dynamic conditional correlations are estimated by maximum likelihood.
mtvgarch(y, order.g = c(1, 1), order.h = NULL, order.x = NULL,
initial.values = list(), xtv = NULL, xreg = NULL, opt = 2, upper.speed = NULL,
tvgarch = FALSE, dcc = FALSE, turbo = TRUE, trace = FALSE)An object of class 'mtvgarch'.
numeric matrix, time series or zoo object.
integer matrix with each row indicating the order.g for each series; number of locations in each transition function of the TV components.
integer matrix with each row indicating the order.h for each
series; the first column controls the GARCH order, the second the ARCH order and
the third the asymmetry order of the GARCH-X components. If NULL, the
default, all series are assumed to follow a GARCH(1,1,0).
NULL or binary matrix indicating which xreg variables
should be included as covariates in the GARCH-X components. If provided and
xreg is NULL, then the selected volatility spillovers are included
as covariates.
a list containing the initial parameter values passed on
to the optimisation routines (constrOptim for the TV component and
nlminb for the GARCH-X component). If list(), the default, then the
values are chosen automatically. TV component: intercept.g - NULL
or numeric vector, size - NULL or numeric matrix containing the
size initial coefficients, speed - NULL or numeric matrix
containing the speed initial coefficients, location - NULL or
numeric matrix containing the location initial coefficients. GARCH-X component:
intercept.h - numeric vector, arch - NULL or numeric matrix
containing the ARCH initial coefficients, garch - NULL or numeric
matrix containing the GARCH-type initial coefficients, asym - NULL
or numeric matrix containing the asymmetry-type initial coefficients,
par.xreg - NULL or numeric matrix containing the X-type initial
coefficients, and R - initial correlation coefficients.
NULL or numeric vector, time series or zoo object to include
as the transition variable in the TV component. If NULL, calendar time,
scaled between 0 and 1, is used as the transition variable.
numeric vector, time series or zoo object to include as covariates in the GARCH-X component.
integer indicating whether the speed parameter in the TV component should be scaled. If 0, no scaling; if 1, speed/sd(xtv); if 2, exp(speed).
NULL or numeric scalar that sets
the upper bound for speed in each transition function. If NULL,
the default, the upper bound is 10000 for all transition functions.
If numeric scalar, upper.speed is used for all transition
functions.
logical. If TRUE, the full parameter set
is estimated in one final step as well as the standard errors. If FALSE
(default), estimates from last iteration are reported instead.
logical. If TRUE, dynamic conditional correlations are
estimated. If FALSE (default), then the conditional correlations are
constant.
logical. If FALSE (default), then the coefficient
variance-covariance is computed during estimation, and the fitted values and
residuals are attached to the returned object. If TRUE, then these
operations are skipped, and hence estimation is faster. Note, however, that if
turbo is set to TRUE, then the coefficient-covariance, fitted values and
residuals can still be extracted subsequent to estimation with vcov.mtvgarch(),
fitted.mtvgarch() and residuals.mtvgarch(), respectively.
logical. If TRUE all output is printed.
Susana Campos-Martins
Cristina Amado and Timo Terasvirta (2013) Modelling volatility by variance decomposition, Journal of Econometrics 175, 142-153.
Susana Campos-Martins and Genaro Sucarrat (2024) Modeling Nonstationary Financial Volatility with the R Package tvgarch, Journal of Statistical Software 108, 1-38.
Christian Francq and Jean-Michel Zakoian (2016) Estimating multivariate volatility models equation by equation, J. R. Stat. Soc. Ser. B Stat. Methodol 78, 613-635.
Robert F. Engle (2002) Dynamic conditional correlation: A simple class of multivariate generalized autoregressive conditional heteroskedasticity models, Journal of Business and Economic Statistics 20, 339-350.
tvgarch,
garchx,
nlminb,
constrOptim
set.seed(12345)
## Simulate from a bivariate CCC-TV(1)-GARCH(1,1) model (default):
mySim <- mtvgarchSim(n = 1000)
## Estimate a CCC-TV(1)-GARCH(1,1) model (default):
myEst <- mtvgarch(y = mySim)
## Print estimation results:
print(myEst)
## Extract coefficients:
coef(myEst)
## Plot conditional volatilities:
plot(myEst)
## Generate predictions:
predict(myEst)
Run the code above in your browser using DataLab