Jump GARCH model
Re: Jump GARCH model
Hi Tom,
I would be grateful if you could modify the Chan and Maheau (2002) ARJI-GARCH to an ARJI-EGARCH model.
Because the GARCH impose restrictions on the parameter and does not allow the variance to oscillate, I decided to use an ARJI-EGARCH.
The problem is I am having challenges modifying the code of the ARJI-GARCH into ARJI-EGARCH.
Please, I implore you to help me in this regard,
Gorgorm
I would be grateful if you could modify the Chan and Maheau (2002) ARJI-GARCH to an ARJI-EGARCH model.
Because the GARCH impose restrictions on the parameter and does not allow the variance to oscillate, I decided to use an ARJI-EGARCH.
The problem is I am having challenges modifying the code of the ARJI-GARCH into ARJI-EGARCH.
Please, I implore you to help me in this regard,
Gorgorm
Re: Jump GARCH model
This appears to be the only thing (other than guess values for the parameters) which needs to change to convert from a standard GARCH to an EGARCH.
nonlin(parmset=garchparms) omega alpha beta
frml hf = omega+alpha*u{1}^2+beta*h{1}
nonlin(parmset=garchparms) omega alpha beta
frml hf = omega+alpha*u{1}^2+beta*h{1}
Re: Jump GARCH model
Hi Tom,
I replaced
nonlin(parmset=garchparms) omega alpha beta
frml hf = omega+alpha*u{1}^2+beta*h{1}
with the syntax for the symmetric GARCH below but it did not work.
set v start end = %seesq
set u start end = res
frml et = r1-b0-b1*r1{1}
frml xt = u/sqrt(v)
frml zt = abs(xt)-exp(%lngamma(2/d)- $
.5*%lngamma(3/d)-.5*%lngamma(1/d))+g*xt
frml ht = exp(a0+a1*zt{1}+a2*log(v{1}))
frml Lt = (u=et), (v=ht), $
log(.5)+log(d)+.5*%lngamma(3/d)-1.5*%lngamma(1/d)-.5*log(v)- $
exp((d/2.0)*(%lngamma(3/d)-%lngamma(1/d)))*(abs(u/sqrt(v)))**d
I am not conversant with the nonlin(parmset=garchparms) option.
I wish I could change the GARCH to EGARCH using the nonlin(parmset=garchparms) option
gorgorm
I replaced
nonlin(parmset=garchparms) omega alpha beta
frml hf = omega+alpha*u{1}^2+beta*h{1}
with the syntax for the symmetric GARCH below but it did not work.
set v start end = %seesq
set u start end = res
frml et = r1-b0-b1*r1{1}
frml xt = u/sqrt(v)
frml zt = abs(xt)-exp(%lngamma(2/d)- $
.5*%lngamma(3/d)-.5*%lngamma(1/d))+g*xt
frml ht = exp(a0+a1*zt{1}+a2*log(v{1}))
frml Lt = (u=et), (v=ht), $
log(.5)+log(d)+.5*%lngamma(3/d)-1.5*%lngamma(1/d)-.5*log(v)- $
exp((d/2.0)*(%lngamma(3/d)-%lngamma(1/d)))*(abs(u/sqrt(v)))**d
I am not conversant with the nonlin(parmset=garchparms) option.
I wish I could change the GARCH to EGARCH using the nonlin(parmset=garchparms) option
gorgorm
Re: Jump GARCH model
See Section 4.6 in the RATS v8 User's Guide for a discussion of named PARMSETS. You need it to list the free parameters in your base GARCH model, which would appear to be A0, A1, A2, G and D.
Are you basing this on a published example of an ARJI-EGARCH model? In Chan and Maheu, the jumps are Normal, which won't interact very well with your GED-EGARCH model.
Are you basing this on a published example of an ARJI-EGARCH model? In Chan and Maheu, the jumps are Normal, which won't interact very well with your GED-EGARCH model.
Re: Jump GARCH model
Hi Tom,
Yes, I wanted to replicate the Chan and Maheau paper in a symmetric GARCH.
As you rightly pointed out the EGARCH assumes a Generalised Error Distribution (GED) structure for the errors.
Given the that the jumps in the Chan and Mehaeu model are normal, I will drop the idea.
Thanks a lot Tom for the quick reply,
Gorgorm.
Yes, I wanted to replicate the Chan and Maheau paper in a symmetric GARCH.
As you rightly pointed out the EGARCH assumes a Generalised Error Distribution (GED) structure for the errors.
Given the that the jumps in the Chan and Mehaeu model are normal, I will drop the idea.
Thanks a lot Tom for the quick reply,
Gorgorm.
Re: Jump GARCH model
The use of the GED isn't at all required, and, in fact, most empirical work with EGARCH models uses a Normal or t.gorgorm wrote:Hi Tom,
Yes, I wanted to replicate the Chan and Maheau paper in a symmetric GARCH.
As you rightly pointed out the EGARCH assumes a Generalised Error Distribution (GED) structure for the errors.
Given the that the jumps in the Chan and Mehaeu model are normal, I will drop the idea.
Thanks a lot Tom for the quick reply,
Gorgorm.
Re: Jump GARCH model
I am interested in estimating a GJR Garch or EGARCH model with jumps to see if the asymmetric volatility holds when jumps are considered. I modified Tom's GARCH jump code. It runs, but the problem is that it does not estimate the standard error for the jump parameters. The same thing happens with the EGARCH code. Can Tom (or anyone) please give me a clue how to deal with this? I am attaching my code and data here. Thanks in advance.
- Attachments
-
- GJR_jump.RPF
- (2.6 KiB) Downloaded 1048 times
-
- Heatingoil.txt
- (461.46 KiB) Downloaded 821 times
Re: Jump GARCH model
This isn't going to work:
frml logl = u=uf,h=hf,jumpgarch(u,h,lambda,delta^2,theta), %LOGTDENSITY(h,u,nu)
The %logtdensity overwrites the value of the log likelihood returned by jumpgarch. The jumpgarch model is based upon a mixture of Normals---you can't just switch over to a t, and it's not clear that you would want to anyway. After all, the whole point is that the "jump" process fattens the tails in a specific way.
frml logl = u=uf,h=hf,jumpgarch(u,h,lambda,delta^2,theta), %LOGTDENSITY(h,u,nu)
The %logtdensity overwrites the value of the log likelihood returned by jumpgarch. The jumpgarch model is based upon a mixture of Normals---you can't just switch over to a t, and it's not clear that you would want to anyway. After all, the whole point is that the "jump" process fattens the tails in a specific way.
Re: Jump GARCH model
TomDoan wrote:See Section 4.6 in the RATS v8 User's Guide for a discussion of named PARMSETS. You need it to list the free parameters in your base GARCH model, which would appear to be A0, A1, A2, G and D.
Are you basing this on a published example of an ARJI-EGARCH model? In Chan and Maheu, the jumps are Normal, which won't interact very well with your GED-EGARCH model.
Hello Tom,
concerning the above, would the syntax below suffice?
nonlin(parmset=garchparms) omega alpha beta delta
frml hf = omega+alpha*(u{1}+delta)^2+beta*h{1}
compute delta=0.0
compute omega=%seesq
Re: Jump GARCH model
Suffice to do what? Your question had been about an EGARCH model. That's not EGARCH at all, it's a standard GARCH with a non-standard impact function.