[R-SIG-Finance] Different external regressor in rugarch give the same result

alexios ghalanos alexios at 4dscape.com
Fri Mar 21 14:44:22 CET 2014


You are obviously trying to capture a permanent "level" shift in your
rice dataset, but the shift is from a high to a low state (i.e. the
coefficient would need to be negative). Since the bounds on the
coefficients of the external regressors (in the conditional variance
equation) are preset to be positive in order to "guarantee" positivity
of the variance, you need to do one of the following:

1. Reverse the order of the dummy i.e. 1:652 = 1, 652:n.row=0.

2. Set the bounds on vxreg:
>setbounds(spec2)<-list(vxreg1=c(-1,1))

3. Use the eGARCH model.

All tested, all working.

And DO NOT USE c(model="fGARCH", submodel="GARCH"). Use directly
model="sGARCH".

-Alexios

On 21/03/2014 13:07, Dessy Anggraeni wrote:
> Hi all,
> 
> I use rugarch package 1.2-9 to measure rice price volatility volatility
> with GARCH model including external regressor in the variance model.
> This package works well, however, it seems like the result doesn't
> response to change in value of external regressors.
> 
> I test 2 external regressors:
> 
> 1.A matrix of dummy variable containing only 0 and 1
> 
> 2.Cross-sectional stock level to price return data (attached)
> 
> Here is the code that I use. Can anybody advise me what's wrong?
> Thanks a lot in advance.
> Best Regards,
> Dessy
> 
> 
> *1.**With dummy variable (0 and 1) as external regressor*
> 
> # where the dummy variable is define as:
> 
> mat <- matrix(, nrow = n.row, ncol = 1)
> 
> for(i in 1:652){
> 
> mat[i,] <- 0
> 
> }
> 
> for(i in 501:n.row){
> 
> mat[i,] <- 1
> 
> }
> 
> spec2 <- ugarchspec(
> 
> variance.model =
> 
> list(model = "fGARCH", garchOrder = c(1,1), submodel = "GARCH",
> external.regressors = mat, variance.targeting = FALSE),
> 
> mean.model =
> 
> list(armaOrder = c(12,0), external.regressors = NULL),
> distribution.model = "norm")
> 
> fit = ugarchfit(spec = spec2, data=xz)
> 
> *2.**With crosssectional stock level estimation as external regressor*
> 
> # matrix m is cross sectional stock level data
> 
> m <- matrix(cross)
> 
> spec2 <- ugarchspec(
> 
> variance.model =
> 
> list(model = "fGARCH", garchOrder = c(1,1), submodel = "GARCH",
> external.regressors = m, variance.targeting = FALSE),
> 
> mean.model =
> 
> list(armaOrder = c(12,0), external.regressors = NULL),
> distribution.model = "norm")
> 
> fit = ugarchfit(spec = spec2, data=xz)
> 
> 
> 
> 
> _______________________________________________
> R-SIG-Finance at r-project.org mailing list
> https://stat.ethz.ch/mailman/listinfo/r-sig-finance
> -- Subscriber-posting only. If you want to post, subscribe first.
> -- Also note that this is not the r-help list where general R questions should go.
>



More information about the R-SIG-Finance mailing list