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

Dessy Anggraeni dessy.anggraeni at gmail.com
Fri Mar 21 17:35:54 CET 2014


Dear Alexios,

Thanks a lot! The suggestions work well.

Another issue is that, whenever I insert external variable in the model, 
the model fit test (AIC, HQ, etc.) and P value of Q-Statistics on 
Standardized Residuals are significantly increase. It seems like the 
insertion of external regressor implies serial correlations in the 
residual. How to handle this problem?

Best regards,
Dessy

Am 3/21/2014 2:44 PM, schrieb alexios ghalanos:
> 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