dcc_fit: DCC fit (first and second steps)

Description Usage Arguments Details Value References Examples

View source: R/functions.R

Description

Obtains the estimation of a variety of DCC models, using as univariate models both GARCH and GARCH-MIDAS specifications.

Usage

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
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
)

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 rugarch (ugarchspec) and rumidas (ugmfit) packages. More in detail, the models coming from rugarch are: model Valid models (currently implemented) are 'sGARCH', 'eGARCH', 'gjrGARCH', 'iGARCH', and 'csGARCH'. The models implemented from rumidas are: 'GM_skew','GM_noskew', 'DAGM_skew', and 'DAGM_noskew'

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"

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 \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).

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:

References

\insertAllCited

Examples

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
require(xts)
# open to close daily log-returns
r_t_s<-log(sp500['2005/2008'][,3])-log(sp500['2005/2008'][,1])
r_t_n<-log(nasdaq['2005/2008'][,3])-log(nasdaq['2005/2008'][,1])
r_t_f<-log(ftse100['2005/2008'][,3])-log(ftse100['2005/2008'][,1])
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)

dccmidas documentation built on March 15, 2021, 5:08 p.m.

Related to dcc_fit in dccmidas...