sorry to bother all,
I am recently doing a topic about spillover effect between two markets.
And I want to use AR(1)-GJR-GARCH(1,1)-M Model. I find that rgarch
package has *functions* for univariate GARCH model, including GJR.
My GJR model is in the attachment.
where ?_(j,t-1)^2 is the squared volitility of counterpart market,
?_(i,t-1)^2 is the squared volitility of domestic market. S represent
good news (S=0)or bad news(S=1). and i write the R code as followings,
variance.model=list(model="gjrGARCH",garchOrder=c(1,1),
external.regressors=lagvoljp)
mean.model=list(armaOrder=c(1,0),include.mean=TRUE,garchInMean=TRUE,inMeanType=2,arfima=FALSE,external.regressors=ljp)
spec=ugarchspec(variance.model=variance.model,mean.model=mean.model,
distribution.model="norm")
fit3.sh=ugarchfit(data=shl,spec=spec,out.sample=0,solver="solnp")
But then I figure out that in normal GJR model, the fomula is
and the function written in rgarch package is also based on it
which means it catches news from domestic market.
But in my model, it should catch news from counterpart market,
I was thinking of taking S part as an another external regressors
since if ?<0,S=1 elseS=0,so I write codes as
variance.model3sh=list(model="fGARCH",garchOrder=c(1,1),
submodel="GARCH", external.regressors=cbind(lagvoljp,voljpgjr))
mean.model3sh=list(armaOrder=c(1,0),include.mean=TRUE,garchInMean=TRUE,inMeanType=2,arfima=FALSE,external.regressors=lagsh)
spec3sh=ugarchspec(variance.model=variance.model3sh,mean.model=mean.model3sh,
distribution.model="norm")
fit3.sh=ugarchfit(data=shl,spec=spec3sh,out.sample=0,solver="solnp")
But the result is still disappointed that the coefficient which reflect
volatility spillover effect is always not significant and almost 0. I
tried other dataset, but the result is the same.
Here is my question,
How could i change the code to let the S reflects the effect from
counterpart market? Are there any codes I write have problems and
un-reasonable part?
Thisi is important for me!
Thank you so much!
Sincerely,
Zoe