[R-sig-finance] Puzzled on a granger causality situation
Achim Zeileis
Achim.Zeileis at wu-wien.ac.at
Thu Aug 11 13:21:06 CEST 2005
On Thu, 11 Aug 2005 10:58:46 +0530 Ajay Narottam Shah wrote:
> This is not really an R question, but it will be great if someone can
> help me understand the situation it will be great. :-)
>
> I am doing a simple granger causality test in a bivariate setting,
> with two variables named "fii" and "rM".
>
> On one hand, when I use grangertest() from lmtest, I get:
>
> Model 1: fii ~ Lags(fii, 1:5) + Lags(rM, 1:5)
> Model 2: fii ~ Lags(fii, 1:5)
> Res.Df Df F Pr(>F)
> 1 634
> 2 639 5 2.5439 0.02718 *
>
> Model 1: rM ~ Lags(rM, 1:5) + Lags(fii, 1:5)
> Model 2: rM ~ Lags(rM, 1:5)
> Res.Df Df F Pr(>F)
> 1 634
> 2 639 5 1.2481 0.2850
>
> which seems to suggest that `rM' does granger-cause `fii' but not the
> over way around.
Yap.
> But, when I look at OLS estimates of a model explaining `rM', I get
> something different. I am using the variable names like `rM.l2' for
> "rM lagged by 2", and so on.
>
> Call:
> lm(formula = rM ~ rM.l1 + rM.l2 + rM.l3 + rM.l4 + rM.l5 + fii.l1
> +
> fii.l2 + fii.l3 + fii.l4 + fii.l5)
>
> Residuals:
> Min 1Q Median 3Q Max
> -11.0345 -0.7043 0.1124 0.8122 8.1185
>
> Coefficients:
> Estimate Std. Error t value Pr(>|t|)
> (Intercept) 8.914e-02 6.871e-02 1.297 0.19499
> rM.l1 1.199e-01 4.034e-02 2.972 0.00307 **
> rM.l2 -1.618e-01 4.077e-02 -3.969 8.03e-05 ***
> rM.l3 5.857e-02 4.124e-02 1.420 0.15601
> rM.l4 7.337e-02 4.070e-02 1.803 0.07192 .
> rM.l5 -4.726e-02 4.065e-02 -1.163 0.24546
> fii.l1 3.785e-04 1.874e-04 2.019 0.04389 *
> fii.l2 8.979e-05 1.909e-04 0.470 0.63822
> fii.l3 -6.184e-05 1.890e-04 -0.327 0.74366
> fii.l4 1.075e-04 1.902e-04 0.565 0.57218
> fii.l5 -2.272e-04 1.858e-04 -1.223 0.22186
> ---
> Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
>
> Residual standard error: 1.388 on 634 degrees of freedom
> Multiple R-Squared: 0.05906, Adjusted R-squared: 0.04422
> F-statistic: 3.98 on 10 and 634 DF, p-value: 2.707e-05
>
> Here I see that the coefficient of fii.l1 is teetering on the edge of
> significance (t=2.019).
>
> My question is: Why is it that grangertest(), which is a joint test
> of fii.l1=fii.l2=fii.l3=fii.l4=fii.l5=0, giving a different answer
> from just looking at the coefficient fii.l1?
Because you ask a different question and you have to know whether this
question makes sense. In sloppy words: you want to know whether lag 1 is
significant given that lag 2-5 remain in the model even if they are
non-significant.
That lag 1-5 are not jointly significant is not very surprising given
that lag 2-5 seem to be clearly non-significant.
> Finally, an R question: in the context of lm(), how does one do a test
> of a set of general linear restrictions?
See linear.hypothesis() in package car.
Z
More information about the R-sig-finance
mailing list