dcc_fit {dccmidas} | R Documentation |
DCC fit (first and second steps)
Description
Obtains the estimation of a variety of DCC models, using as univariate models both GARCH and GARCH-MIDAS specifications.
Usage
dcc_fit(
r_t,
univ_model = "sGARCH",
distribution = "norm",
MV = NULL,
K = NULL,
corr_model = "cDCC",
lag_fun = "Beta",
N_c = NULL,
K_c = NULL,
out_of_sample = NULL
)
Arguments
r_t |
List of daily returns on which estimate a DCC model. Each daily return must be an 'xts' object. Note that the sample period of the returns should be the same. Otherwise, a merge is performed |
univ_model |
Specification of the univariate model. Valid choices are: some of the specifications used in the |
distribution |
optional Distribution chosen for the univariate estimation. Valid choices are: "norm" (by default) and "std", respectively, for the Normal and Student's t distributions |
MV |
optional MIDAS variable to include in the univariate estimation, if the model specificied is a GARCH-MIDAS (GM, Engle et al. (2013)) or a Double Asymmetric GM (DAGM, Engle et al. (2013)). In the case of MIDAS-based models, please provide a list of the MIDAS variables obtained from the mv_into_mat function. If the same MV variable is used, then provide always a list, with the same (transformed) variable repeated |
K |
optional The number of lagged realization of MV variable to use, if 'univ_model' has a MIDAS term |
corr_model |
Correlation model used. Valid choices are: "cDCC" (the corrected DCC of Aielli (2013)), "aDCC" (the asymmetric DCC model of Cappiello et al. (2006)), "DECO" (Dynamic equicorrelation of Engle and Kelly (2012)), and "DCCMIDAS" (the DCC-MIDAS of Colacito et al. (2011)). By detault, it is "cDCC" |
lag_fun |
optional. Lag function to use. Valid choices are "Beta" (by default) and "Almon", for the Beta and Exponential Almon lag functions, respectively, if 'univ_model' has a MIDAS term and/or if 'corr_model' is "DCCMIDAS" |
N_c |
optional Number of (lagged) realizations to use for the standarized residuals forming the long-run correlation, if 'corr_model' is "DCCMIDAS" |
K_c |
optional Number of (lagged) realizations to use for the long-run correlation, if 'corr_model' is "DCCMIDAS" |
out_of_sample |
optional A positive integer indicating the number of periods before the last to keep for out of sample forecasting |
Details
Function dcc_fit
implements the two-steps estimation of the DCC models. In the first step, a variety of univariate models are
considered. These models can be selected using for the parameter 'univ_model' one of the following choices: 'sGARCH'
(standard GARCH of Bollerslev (1986)),
'eGARCH' of Nelson (1991),
'gjrGARCH' of Glosten et al. (1993),
'iGARCH' (Integrated GARCH of Engle and Bollerslev (1986)),
'csGARCH' (the Component GARCH of Engle and Lee (1999)),
'GM_noskew' and 'GM_skew' (the GARCH-MIDAS model of Engle et al. (2013), respectively,
without and with the asymmetric term in the short-run component),
and 'DAGM_noskew' and 'DAGM_skew' (the Double Asymmetric GARCH-MIDAS model of Amendola et al. (2019),
respectively, without and with the asymmetric term in the short-run component).
Value
dcc_fit
returns an object of class 'dccmidas'. The function summary.dccmidas
can be used to print a summary of the results. Moreover, an object of class 'dccmidas' is a list containing the following components:
assets: Names of the assets considered.
model: Univariate model used in the first step.
est_univ_model: List of matrixes of estimated coefficients of the univariate model, with the QML (Bollerslev and Wooldridge 1992) standard errors.
corr_coef_mat: Matrix of estimated coefficients of the correlation model, with the QML standard errors.
mult_model: Correlation model used in the second step.
obs: The number of daily observations used for the estimation.
period: The period of the (in-sample) estimation.
H_t: Conditional covariance matrix, reported as an array.
R_t: Conditional correlation matrix, reported as an array.
R_t_bar: Conditional long-run correlation matrix, reported as an array, if the correlation matrix includes a MIDAS specification.
H_t_oos: Conditional covariance matrix, reported as an array, for the out-of-sample period, if present.
R_t_oos: Conditional correlation matrix, reported as an array, for the out-of-sample period, if present.
R_t_bar_oos: Conditional long-run correlation matrix, reported as an array, if the correlation matrix includes a MIDAS specification, for the out-of-sample period, if present.
est_time: Time of estimation.
Days: Days of the (in-)sample period.
llk: The value of the log-likelihood (for the second step) at the maximum.
References
Aielli GP (2013).
“Dynamic conditional correlation: on properties and estimation.”
Journal of Business & Economic Statistics, 31(3), 282–299.
doi:10.1080/07350015.2013.771027.
Amendola A, Candila V, Gallo GM (2019).
“On the asymmetric impact of macro–variables on volatility.”
Economic Modelling, 76, 135–152.
doi:10.1016/j.econmod.2018.07.025.
Bollerslev T (1986).
“Generalized autoregressive conditional heteroskedasticity.”
Journal of Econometrics, 31(3), 307–327.
doi:10.1016/0304-4076(86)90063-1.
Bollerslev T, Wooldridge JM (1992).
“Quasi-maximum likelihood estimation and inference in dynamic models with time-varying covariances.”
Econometric Reviews, 11, 143–172.
doi:10.1080/07474939208800229.
Cappiello L, Engle RF, Sheppard K (2006).
“Asymmetric dynamics in the correlations of global equity and bond returns.”
Journal of Financial Econometrics, 4(4), 537–572.
doi:10.1093/jjfinec/nbl005.
Colacito R, Engle RF, Ghysels E (2011).
“A component model for dynamic correlations.”
Journal of Econometrics, 164(1), 45–59.
doi:10.1016/j.jeconom.2011.02.013.
Engle R, Kelly B (2012).
“Dynamic equicorrelation.”
Journal of Business & Economic Statistics, 30(2), 212–228.
doi:10.1080/07350015.2011.652048.
Engle RF, Bollerslev T (1986).
“Modelling the persistence of conditional variances.”
Econometric Reviews, 5(1), 1–50.
doi:10.1080/07474938608800095.
Engle RF, Ghysels E, Sohn B (2013).
“Stock market volatility and macroeconomic fundamentals.”
Review of Economics and Statistics, 95(3), 776–797.
doi:10.1162/REST_a_00300.
Engle RF, Lee GJ (1999).
“A Long-run and Short-run Component Model of Stock Return Volatility.”
In Engle RF, White H (eds.), Cointegration, Causality, and Forecasting: A Festschrift in Honor of Clive W. J. Granger, 475–497.
Oxford University Press, Oxford.
Glosten LR, Jagannathan R, Runkle DE (1993).
“On the relation between the expected value and the volatility of the nominal excess return on stocks.”
The Journal of Finance, 48(5), 1779–1801.
doi:10.1111/j.1540-6261.1993.tb05128.x.
Nelson DB (1991).
“Conditional heteroskedasticity in asset returns: A new approach.”
Econometrica, 59(2), 347–370.
doi:10.2307/2938260.
Examples
require(xts)
# daily log-returns
# close to close daily log-returns
r_t_s<-diff(log(sp500['2010/2019'][,3]))
r_t_s[1]<-0
r_t_n<-diff(log(nasdaq['2010/2019'][,3]))
r_t_n[1]<-0
r_t_f<-diff(log(ftse100['2010/2019'][,3]))
r_t_f[1]<-0
db_m<-merge.xts(r_t_s,r_t_n,r_t_f)
db_m<-db_m[complete.cases(db_m),]
colnames(db_m)<-c("S&P500","NASDAQ","FTSE100")
# list of returns
r_t<-list(db_m[,1],db_m[,2],db_m[,3])
# MV transformation (same MV for all the stocks)
require(rumidas)
mv_m<-mv_into_mat(r_t[[1]],diff(indpro),K=12,"monthly")
# list of MV
MV<-list(mv_m,mv_m,mv_m)
# estimation
K_c<-144
N_c<-36
dccmidas_est<-dcc_fit(r_t,univ_model="GM_noskew",distribution="norm",
MV=MV,K=12,corr_model="DCCMIDAS",N_c=N_c,K_c=K_c)
dccmidas_est
summary.dccmidas(dccmidas_est)