[R] Comparison between GARCH and ARMA

Wensui Liu liuwensui at gmail.com
Tue Nov 7 19:54:40 CET 2006


Mark,

I totally agree that it doesn't make sense to compare arma with garch.

but to some extent, garch can be considered arma for conditional
variance. similarly, arch can be considered ma for conditional
variance.

the above is just my understanding, which might not be correct.

thanks.

On 11/7/06, Leeds, Mark (IED) <Mark.Leeds at morganstanley.com> wrote:
> Hi : I'm a R novice but I consider myself reasonably versed in time
> series related material and
> I have never heard of an equivalence between Garch(1,1) for volatility
> and an ARMA(1,1) in the squared returns
> and I'm almost sure there isn't.
>
> There are various problems with what you wrote.
>
> 1) r(t) = h(t)*z(t) not h(i) but that's not a big deal.
>
> 2) you can't write the equation in terms of r(t) because r(t) =
> h(t)*z(t) and h(t) is UPDATED FIRST
> And then the relation r(t) = h(t)*z(t) is true ( in the sense of the
> model ). So, r(t) is
> a function of z(t) , a random variable, so trying to use r(t) on the
> left hand side of the volatility
> equation doesn't make sense at all.
>
> 3) even if your equation was valid, what you wrote is not an ARMA(1,1).
> The AR term is there but the MA term
> ( the beta term ) Has an r_t-1 terms in it when r_t-1 is on the left
> side. An MA term in an ARMA framework
> multiples lagged noise terms not the lag of what's on the left side.
> That's what the AR term does.
>
> 4) even if your equation was correct in terms of it being a true
> ARMA(1,1) , you
> Have common coefficients on The AR term and MA term ( beta ) so you
> would need contraints to tell the
> Model that this was the same term in both places.
>
> 5) basically, you can't do what you
> Are trying to do so you shouldn't expect to any consistency in estimates
> Of the intercept for the reasons stated above.
> why are you trying to transform in such a way anyway ?
>
> Now back to your original garch(1,1) model
>
> 6) a garch(1,1) has a stationarity condition that alpha + beta is less
> than 1
> So this has to be satisfied when you estimate a garch(1,1).
>
> It looks like this condition is satisfied so you should be okay there.
>
> 7) also, if you are really assuming/believe that the returns have mean
> zero to begin with,  without subtraction,
> Then you shouldn't be subtracting the mean before you estimate
> Because eseentially you will be subtracting noise and throwing out
> useful
> Information that could used in estimating the garch(1,1) parameters.
> Maybe you aren't assuming that the mean is zero and you are making the
> mean zero which is fine.
>
> I hope this helps you. I don't mean to be rude but I am just trying to
> get across that what you
> Are doing is not valid. If you saw the equivalence somewhere in the
> literature,
> Let me know because I would be interested in looking at it.
>
>
> mark
>
>
>
>
>
>
> -----Original Message-----
> From: r-help-bounces at stat.math.ethz.ch
> [mailto:r-help-bounces at stat.math.ethz.ch] On Behalf Of Megh Dal
> Sent: Tuesday, November 07, 2006 2:24 AM
> To: r-help at stat.math.ethz.ch
> Subject: [R] Comparison between GARCH and ARMA
>
> Dear all R user,
>
> Please forgive me if my problem is too simple.
> Actually my problem is basically Statistical rather directly R related.
> Suppose I have return series ret
> with mean zero. And I want to fit a Garch(1,1)
> on this.
>
> my       is r[t] = h[i]*z[t]
>
>             h[t] = w + alpha*r[t-1]^2 + beta*h[t-1]
>
> I want to estimate the three parameters here;
>
> the R syntax is as follows:
>
> # download data:
> data(EuStockMarkets)
> r <- diff(log(EuStockMarkets))[,"DAX"]
> r = r - mean(r)
>
> # fit a garch(1,1) on this:
> library(tseries)
> garch(r)
>
> The estimated parameters are given below:
>
>  ***** ESTIMATION WITH ANALYTICAL GRADIENT *****
>
>
>
> Call:
> garch(x = r)
>
> Coefficient(s):
>        a0         a1         b1
> 4.746e-06  6.837e-02  8.877e-01
>
> Now it is straightforward to transform Garch(1,1)
>  to a ARMA       like this:
>
> r[t]^2 = w + (alpha+beta)*r[t-1]^2 + beta*(h[t-1] -
> r[t-1]^2) - (h[t] - r[t]^2)
>        = w + (alpha+beta)*r[t-1]^2 + beta*theta[t-1] + theta[t]
>
> So if I fit a ARMA(1,1) on r[t]^2 I am getting following result;
>
> arma(r^2, order=c(1,1))
>
> Call:
> arma(x = r^2, order = c(1, 1))
>
> Coefficient(s):
>        ar1         ma1   intercept
>  9.157e-01  -8.398e-01   9.033e-06
>
> Therefore if the above derivation is correct then I should get a same
> intercept term for both Garch and ARMA case. But here I am not getting
> it. Can anyone explain why?
>
> Any input will be highly appreciated.
>
> Thanks and regards,
> Megh
>
>
>
>
>
> ________________________________________________________________________
> ____________
> Sponsored Link
>
> Degrees online in as fast as 1 Yr - MBA, Bachelor's, Master's, Associate
> Click now to apply http://yahoo.degrees.info
>
> ______________________________________________
> R-help at stat.math.ethz.ch mailing list
> https://stat.ethz.ch/mailman/listinfo/r-help
> PLEASE do read the posting guide
> http://www.R-project.org/posting-guide.html
> and provide commented, minimal, self-contained, reproducible code.
> --------------------------------------------------------
>
> This is not an offer (or solicitation of an offer) to buy/se...{{dropped}}
>
> ______________________________________________
> R-help at stat.math.ethz.ch mailing list
> https://stat.ethz.ch/mailman/listinfo/r-help
> PLEASE do read the posting guide http://www.R-project.org/posting-guide.html
> and provide commented, minimal, self-contained, reproducible code.
>


-- 
WenSui Liu
(http://spaces.msn.com/statcompute/blog)
Senior Decision Support Analyst
Cincinnati Children Hospital Medical Center



More information about the R-help mailing list