dcc_fit | R Documentation |
Obtains the estimation of a variety of DCC models, using as univariate models both GARCH and GARCH-MIDAS specifications.
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
)
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, \insertCiteengle_ghysels_sohn_2013;textualdccmidas) or a Double Asymmetric GM (DAGM, \insertCiteengle_ghysels_sohn_2013;textualdccmidas). 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 \insertCiteaielli2013dynamic;textualdccmidas), "aDCC" (the asymmetric DCC model of \insertCitecappiello2006asymmetric;textualdccmidas), "DECO" (Dynamic equicorrelation of \insertCiteengle2012dynamic;textualdccmidas), and "DCCMIDAS" (the DCC-MIDAS of \insertCitecolacito2011component;textualdccmidas). 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 |
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 \insertCitebollerslev1986generalized;textualdccmidas),
'eGARCH' of \insertCitenelson1991conditional;textualdccmidas,
'gjrGARCH' of \insertCiteglosten_1993;textualdccmidas,
'iGARCH' (Integrated GARCH of \insertCiteengle1986modelling;textualdccmidas),
'csGARCH' (the Component GARCH of \insertCiteEngle_lee_1999;textualdccmidas),
'GM_noskew' and 'GM_skew' (the GARCH-MIDAS model of \insertCiteengle_ghysels_sohn_2013;textualdccmidas, 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 \insertCiteamendola_candila_gallo_2019;textualdccmidas,
respectively, without and with the asymmetric term in the short-run component).
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 \insertCiteBollerslev_Wooldridge_1992dccmidas 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.
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)
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.