7 posts
• Page **1** of **1**

These are replication files for Chan and Maheu(2002), "Conditional Jump Dynamics in Stock Market Returns", Journal of Business and Economic Statistics, vol 20, no. 3, 377-389. This estimates GARCH models with added Poisson jump processes with either fixed or "ARJI" Poisson probabilities. The ARJI-GARCH model was introduced in this paper to allow the jump probabilities to be time-varying using an ARMA-like model. The JUMPGARCH.SRC file includes functions which evaluate the log likelihood for a single time period given the GARCH variance, the Poisson mean of the jump process and the mean and variance of the jumps. The calculation done here is slightly different from the one described in the paper—it computes the probabilities of the Poisson conditional on an upper bound on the number of jumps, while the calculations done in the paper use the standard Poisson integrating constant for the sums to infinity. The conditional calculation is more stable numerically.

- TomDoan
**Posts:**5408**Joined:**Wed Nov 01, 2006 5:36 pm

Hi Tom,

Can you modify the program of Chan and Maheu (2002 JBES) to Maheu and McCurdy (2004 Journal of Finance "News Arrival, Jump Dynamics, and Volatility Components for Individual Stock Returns" Vol. 59, pp.755-793.

Ray

Thanks.

Can you modify the program of Chan and Maheu (2002 JBES) to Maheu and McCurdy (2004 Journal of Finance "News Arrival, Jump Dynamics, and Volatility Components for Individual Stock Returns" Vol. 59, pp.755-793.

Ray

Thanks.

- alberta123
**Posts:**2**Joined:**Sun Nov 24, 2013 3:33 am

The only new part of the calculation is that it requires the expected number of jumps given the data. In the calculation below, JP is the unconditional probability of K jumps (without the integrating constant), and %density((u-k*theta)/jsd)/jsd is the P[observed U|K jumps] so the sum of JP * %density(...) across K gives P[data]. The /wt is to allow for the fact that the truncation of the sum at KMAX means that the standard integrating constant (exp(-lambda)) on the Poisson isn't correct. The expected value of k given the data will be the sum of k x P(k|data) which will be the sum of k x P(data|k) x P(k) / P(data).

You would have to save the value of EK into a series and use that in the coefficient on the lag squared residual.

- Code: Select all
`function jumpgarchx u h lambda deltasq theta ek`

type real jumpgarchx u h lambda deltasq theta *ek

*

local integer k

local real jsd wt jp

*

compute wt=0.0

compute ek=0.0

compute jumpgarchx=0.0

do k=0,kmax

compute jsd=sqrt(h+k*deltasq)

compute jp =exp(k*log(lambda)-%lngamma(k+1))

compute wt =wt+jp

compute jpu=jp*%density((u-k*theta)/jsd)/jsd

compute jumpgarchx=jumpgarchx+jpu

compute ek=ek+k*jpu

end do k

compute ek=ek*jumpgarchx

compute jumpgarchx=log(jumpgarchx/wt)

end jumpgarchx

You would have to save the value of EK into a series and use that in the coefficient on the lag squared residual.

- TomDoan
**Posts:**5408**Joined:**Wed Nov 01, 2006 5:36 pm

Dear Tom,

I would like to do some research using Chan&Maheu, JBES2002(Jump GARCH model) and I would like to do the out-of-sample analysis but don't know how to write the code. Could you please give me some advice.

Thanks a lot.

I would like to do some research using Chan&Maheu, JBES2002(Jump GARCH model) and I would like to do the out-of-sample analysis but don't know how to write the code. Could you please give me some advice.

Thanks a lot.

- Michelle
**Posts:**13**Joined:**Sun Oct 25, 2015 10:03 pm

In this calculation:

set ustdsq = (u-lambda*theta)^2/(h+lambda*(theta^2+delta^2))

the one-step forecast of the series is lambda*theta and the one step forecast of the variance is the h+lambda*(theta^2+delta^2).

set ustdsq = (u-lambda*theta)^2/(h+lambda*(theta^2+delta^2))

the one-step forecast of the series is lambda*theta and the one step forecast of the variance is the h+lambda*(theta^2+delta^2).

- TomDoan
**Posts:**5408**Joined:**Wed Nov 01, 2006 5:36 pm

Dear Tom,

Thanks for your reply. I was wondering if it is possible to use the command "forecast(model=ARJI,...)" to do the one-step-ahead forecast of the Jump GARCH model.

Thanks for your reply. I was wondering if it is possible to use the command "forecast(model=ARJI,...)" to do the one-step-ahead forecast of the Jump GARCH model.

- Michelle
**Posts:**13**Joined:**Sun Oct 25, 2015 10:03 pm

No. It has a very specialized formula.

- TomDoan
**Posts:**5408**Joined:**Wed Nov 01, 2006 5:36 pm

7 posts
• Page **1** of **1**

Return to Examples and Sample Code

Users browsing this forum: No registered users and 1 guest