Atraso no teste de causalidade de Granger

11

Suponha que eu esteja considerando várias variáveis ​​independentes para possível inclusão em um modelo ARIMAX que estou desenvolvendo. Antes de ajustar variáveis ​​diferentes, eu gostaria de filtrar variáveis ​​que exibem causalidade reversa usando um teste de Granger (estou usando a granger.testfunção do MSBVARpacote em R, embora eu acredite que outras implementações funcionem da mesma forma). Como determino quantos atrasos devem ser testados?

A função R é:, granger.test(y, p)onde yé um quadro de dados ou matriz e psão os atrasos.

A hipótese nula é de que os últimos valores de não ajuda na previsão do valor de .pXY

Existe alguma razão para não selecionar um atraso muito alto aqui (além da perda de observações)?

Observe que eu já diferenciei todas as séries temporais no meu quadro de dados, com base na ordem de integração das minhas séries temporais dependentes. (Por exemplo, diferenciar minha série temporal dependente uma vez a tornou estacionária. Portanto, eu também diferenciei todas as séries temporais "independentes" uma vez.)

ch-pub
fonte
11
Observe que sua estratégia de diferenciação para obter estacionariedade está sujeita à ausência de cointegração. Veja a excelente publicação no blog "Testing for Granger Causality", de Dave Giles, para obter detalhes.
Richard Hardy

Respostas:

12

O trade-off é entre preconceito e poder. Poucas defasagens, você tem um teste tendencioso por causa da correlação automática residual. Muitos, você permitir rejeições potencialmente espúrios da null - alguma correlação aleatório pode fazer parecer que ajuda a prever . Se essa é uma preocupação prática ou não depende dos seus dados, meu palpite seria se inclinar mais, mas o comprimento do atraso sempre pode ser determinado da seguinte maneira:XY

A causalidade de Granger sempre deve ser testada no contexto de algum modelo. No caso específico da granger.testfunção em R, o modelo possui p valores anteriores de cada uma das duas variáveis ​​no teste bivariado. Portanto, o modelo usado é:

yi,t=α+l=1pβlyi,tl+γlxi,tl+ϵi,t

Uma maneira convencional de escolher para este modelo seria tentar esta regressão com vários valores de e usar o controle do AIC ou BIC para cada comprimento de atraso. Em seguida, execute o teste novamente usando o valor de que teve o IC mais baixo em suas regressões.ppp

Em geral, o número de lag no modelo pode ser diferente para e e um teste de Granger ainda será apropriado. É no caso específico da implementação que você está restrito ao mesmo número de defasagens para ambos. Esta é uma questão de conveniência, não uma necessidade teórica. Com diferentes comprimentos de defasagem para as duas variáveis, você ainda pode usar o AIC ou o BIC para selecionar seu modelo, basta comparar muitas combinações atrasos de e atrasos de . Veja isso .xygranger.testnxmy

Apenas uma palavra extra - como o teste de Granger depende do modelo, o viés de variáveis ​​omitidas pode ser um problema para a causalidade de Granger. Convém incluir todas as variáveis ​​em seu modelo e, em seguida, usar a causalidade de Granger para excluir blocos delas, em vez de usar a granger.testfunção que apenas faz testes em pares.

jayk
fonte
Deixe-me ver se entendi corretamente ... Então, se estou verificando se y causa alterações em x1, realizo vários ajustes: x1 ~ L (y, 1), x1 ~ L (y, 1) + L (y, 2), x1 ~ L (y, 1) + L (y, 2) + L (y, 3) ... Então, aquele com o melhor IC é o atraso que eu escolho usar para o teste de Granger?
ch-pub
11
Sim, embora os valores defasados ​​de x também devam ser incluídos.
Jayk
Não sei se entendi essa parte. Você quer dizer algo assim? x1 ~ L (y, 1) + L (x1,1) versus x1 ~ L (y, 1) + L (x1,1) + L (y, 2) + L (x1,2) versus ...
ch-pub
2
Sim. Em geral, você não precisa fazer isso dessa maneira, porque os comprimentos de defasagem não precisam ser os mesmos para x e y. Veja: en.wikipedia.org/wiki/Granger_causality#Mathematical_statement No entanto, o comando R granger.test usa p valores anteriores de x AND y. Com essa especificação subjacente ao teste, você precisa tentar usar IC com n valores anteriores de x AND y versus IC com n + 1 valores anteriores de x AND y.
Jayk
Sem problemas! Acabei de editar minha resposta original para torná-la um pouco menos opaca.
Jayk