Estou executando o seguinte teste de raiz unitária (Dickey-Fuller) em uma série temporal usando a ur.df()
função no urca
pacote.
O comando é:
summary(ur.df(d.Aus, type = "drift", 6))
A saída é:
###############################################
# Augmented Dickey-Fuller Test Unit Root Test #
###############################################
Test regression drift
Call:
lm(formula = z.diff ~ z.lag.1 + 1 + z.diff.lag)
Residuals:
Min 1Q Median 3Q Max
-0.266372 -0.036882 -0.002716 0.036644 0.230738
Coefficients:
Estimate Std. Error t value Pr(>|t|)
(Intercept) 0.001114 0.003238 0.344 0.73089
z.lag.1 -0.010656 0.006080 -1.753 0.08031 .
z.diff.lag1 0.071471 0.044908 1.592 0.11214
z.diff.lag2 0.086806 0.044714 1.941 0.05279 .
z.diff.lag3 0.029537 0.044781 0.660 0.50983
z.diff.lag4 0.056348 0.044792 1.258 0.20899
z.diff.lag5 0.119487 0.044949 2.658 0.00811 **
z.diff.lag6 -0.082519 0.045237 -1.824 0.06874 .
---
Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
Residual standard error: 0.06636 on 491 degrees of freedom
Multiple R-squared: 0.04211, Adjusted R-squared: 0.02845
F-statistic: 3.083 on 7 and 491 DF, p-value: 0.003445
Value of test-statistic is: -1.7525 1.6091
Critical values for test statistics:
1pct 5pct 10pct
tau2 -3.43 -2.86 -2.57
phi1 6.43 4.59 3.78
O que significam os códigos de significância (códigos de significação)? Notei que alguns deles foram escritos contra: z.lag.1, z.diff.lag.2, z.diff.lag.3 (o código de significado ".") E z.diff.lag.5 (o " ** "código de significância).
A saída fornece dois (2) valores da estatística de teste: -1,7525 e 1,6091. Eu sei que a estatística do teste do ADF é a primeira (ou seja, -1,7525). Qual é o segundo então?
Por fim, para testar a hipótese de raiz unitária no nível de significância de 95%, preciso comparar minha estatística de teste do ADF (ou seja, -1,7525) com um valor crítico, que normalmente recebo de uma tabela. A saída aqui parece me dar os valores críticos. No entanto, a questão é: qual valor crítico entre "tau2" e "phi1" devo usar.
Obrigado pela sua resposta.
fonte
Respostas:
Parece que os criadores deste comando R em particular presumem que alguém esteja familiarizado com as fórmulas originais de Dickey-Fuller, portanto, não forneceu a documentação relevante sobre como interpretar os valores. Descobri que Enders era um recurso incrivelmente útil (Applied Econometric Time Series 3e, 2010, p. 206-209 - imagino que outras edições também fariam bem). Abaixo, usarei dados do pacote URCA, receita real na Dinamarca como exemplo.
Pode ser útil primeiro descrever as três fórmulas diferentes que Dickey-Fuller usou para obter hipóteses diferentes, uma vez que elas correspondem às opções de "tipo" ur.df. Enders especifica que, em todos esses três casos, o termo consistente usado é gama, o coeficiente para o valor anterior de y, o termo de atraso. Se gama = 0, existe uma raiz da unidade (passeio aleatório, não estacionário). Onde a hipótese nula é gama = 0, se p <0,05, rejeitamos o nulo (no nível de 95%) e presumimos que não há raiz unitária. Se falharmos em rejeitar o nulo (p> 0,05), presumimos que exista uma raiz unitária. A partir daqui, podemos proceder à interpretação dos tau e phi.
1) tipo = "nenhum": (fórmula de Enders p. 208)Δy(t)=γ∗y(t−1)+e(t)
(onde é o termo do erro, presumivelmente ruído branco; de ; refere-se ao anterior valor de y, o mesmo ocorre com o atraso)e(t) γ=a−1 y=a∗y(t−1)+e(t) y(t−1)
Para o tipo = "none", tau (ou tau1 na saída R) é a hipótese nula para gama = 0. Usando o exemplo de renda da Dinamarca, recebo "O valor da estatística de teste é 0,7944" e os "Valores críticos para estatísticas de teste são : tau1 -2,6 -1,95 -1,61 Dado que a estatística do teste está dentro das 3 regiões (1%, 5%, 10%) onde falhamos em rejeitar o nulo, devemos presumir que os dados são uma caminhada aleatória, ou seja, que uma raiz unitária está presente.Neste caso, o tau1 refere-se à hipótese gama = 0. O "z.lag1" é o termo gama, o coeficiente para o termo de atraso (y (t-1)), que é p = 0,431, que falhamos em rejeitar como significantes, simplesmente implicando que a gama não é estatisticamente significante para este modelo. Aqui está a saída de R
2) type = "drift" (sua pergunta específica acima):: (fórmula de Enders p. 208)Δy(t)=a0+γ∗y(t−1)+e(t)
(onde a0 é "um sub-zero" e se refere ao termo constante ou à deriva) Aqui é onde a interpretação da saída fica mais complicada. "tau2" ainda é a hipótese nula . Nesse caso, onde a primeira estatística de teste = -1,4462 está dentro da região de falha em rejeitar o nulo, devemos novamente presumir uma raiz de unidade, que .γ=0 γ=0
O termo phi1 refere-se à segunda hipótese, que é uma hipótese nula combinada de a0 = gama = 0. Isso significa que AMBOS os valores são testados para serem 0 ao mesmo tempo. Se p <0,05, rejeitamos o nulo e presumimos que PELO MENOS um deles seja falso - ou seja, um ou ambos os termos a0 ou gama não são 0. A falha em rejeitar esse nulo implica que AMBOS a0 E gama = 0, implicando 1) que gama = 0, portanto, uma raiz unitária está presente, E 2) a0 = 0, portanto, não há termo de deriva. Aqui está a saída R
3) Finalmente, para o tipo = "tendência": (fórmula de Enders p. 208)Δy(t)=a0+gamma∗y(t−1)+a2(t)+e(t)
(onde a2 (t) é um termo de tendência temporal) As hipóteses (de Enders p. 208) são as seguintes: tau: gama = 0 phi3: gama = a2 = 0 phi2: a0 = gama = a2 = 0 Isso é semelhante a a saída R. Nesse caso, as estatísticas de teste são -2,4216 2,1927 2,9343 Em todos esses casos, elas se enquadram nas zonas "falha em rejeitar o nulo" (consulte os valores críticos abaixo). O que tau3 implica, como acima, é que falhamos em rejeitar o nulo da raiz unitária, o que implica que uma raiz unitária está presente. Não rejeitar o phi3 implica duas coisas: 1) gama = 0 (raiz da unidade) E 2) não há termo de tendência temporal, ou seja, a2 = 0. Se rejeitarmos esse nulo, isso implicaria que um ou ambos os termos não fossem 0. A falha em rejeitar phi2 implica 3 coisas: 1) gama = 0 e 2) sem tendência de tempo AND 3) sem tendência à deriva, ou seja, gama = 0, que a0 = 0 e que a2 = 0.
Aqui está a saída R
No seu exemplo específico acima, para os dados d.Aus, como as duas estatísticas de teste estão dentro da zona "falha ao rejeitar", isso implica que gama = 0 AND a0 = 0, significando que há uma raiz de unidade, mas sem termo à deriva.
fonte
Como a junta-p já apontou, os códigos de significância são razoavelmente padrão e correspondem aos valores de p, ou seja, a significância estatística de um teste de hipótese. um valor p de 0,01 significa que a conclusão é verdadeira com 99% de confiança.
O artigo da Wikipedia sobre Dickey-Fuller descreve as três versões do teste Dickey-Fuller: "raiz da unidade", "raiz da unidade com desvio" e "raiz da unidade com desvio e tendência temporal determinística" ou o que é referido no
urca
documentação como type = "none", "drift" e "trend", respectivamente.Cada um desses testes é uma regressão linear progressivamente mais complexa. Em todas elas existe a raiz, mas na deriva também há um coeficiente de deriva, e na tendência também há um coeficiente de tendência. Cada um desses coeficientes tem um nível de significância associado. Embora a significância do coeficiente de raiz seja o mais importante e o foco principal do teste de DF, também podemos estar interessados em saber se a tendência / deriva também é estatisticamente significativa. Depois de mexer nos diferentes modos e ver quais coeficientes aparecem / desaparecem nos testes t, pude identificar facilmente qual coeficiente correspondia a qual teste t.
Eles podem ser escritos da seguinte forma (da página da wiki):
No seu caso, "tau2" corresponde a , enquanto "phi1" corresponde a . Você também verá um terceiro coeficiente aparecer no teste "tendência", o que corresponderia a na terceira equação acima. No entanto, os nomes das variáveis serão alterados quando você alternar para "tendência", portanto, tenha cuidado e certifique-se de fazer isso para verificar. Eu acredito no modo "tendência", "tau3" corresponde a , "phi2" corresponde a e "phi3" corresponde a .a 0 a 1 δ a 0 a 1δ a0 a1 δ a0 a1
fonte
Mais informações nas notas da aula de Roger Perman sobre testes de raiz unitária
Veja também a tabela 4.2 em Enders, Série Econômica Econômica Aplicada (4e), que resume as diferentes hipóteses às quais essas estatísticas de teste se referem. O conteúdo concorda com a imagem fornecida acima.
fonte
Achei a resposta de Jeramy bastante fácil de seguir, mas constantemente me vi tentando atravessar a lógica corretamente e cometendo erros. Codifiquei uma função R que interpreta cada um dos três tipos de modelos e emite avisos se houver inconsistências ou resultados inconclusivos (acho que nunca haverá inconsistências se eu entender a matemática do ADF corretamente, mas ainda acho uma boa verifique se a função ur.df tem algum defeito).
Por favor dê uma olhada. É um prazer receber comentários / correção / melhorias.
https://gist.github.com/hankroark/968fc28b767f1e43b5a33b151b771bf9
fonte
post e respostas muito interessantes. Só tenho uma dúvida em relação à tabela explicada pelo usuário3096626. Quais relatórios de software no teste do ADF produzem os valores de
\tau_{\alpha \mu}
,\tau_{\alpha \tau}
e\tau_{\beta \tau}
? Obviamente, R nãofonte
phi1 phi2 phi3 são equivalentes aos testes F na estrutura do ADF
fonte