Então eu vi uma palestra sobre o papel das expectativas na macroeconomia, nela o palestrante fala de um modelo bem simples para prever a inflação e como eu estou aprendendo econometria no tempo em que escrevo isso, resolvi treinar minha econometria fazendo esse exercício estatístico de prever a inflação. Então eis aqui mais um exercício estatístico!
Primeiro eu pego os dados no IPEA (*, **) sobre a inflação em variação mensal e a expectativa de inflação. Coloco meus dados numa tabela de excel e acrescento alguns lags. Tendo feito isso, para o R:
library(readxl)
base_de_dados <- read_excel(“E:/User/Gabriel/inflation/base_de_dados.xlsx”)
View(base_de_dados)
Okay, instalo alguns pacotes nesse meio tempo.
Vamos aos testes antes da previsão propriamente. Primeiro precisamos testar a estacionaridade:
adf.test(base_de_dados$inf, alternative = “stationary”, k=1)
sendo inf = inflação corrente
Resultando:
Augmented Dickey-Fuller Test
data: base_de_dados$inf
Dickey-Fuller = -6.2968, Lag order = 1, p-value = 0.01
alternative hypothesis: stationary
Okay, mas temos ainda a váriavel exp = expectativa de inflação
Augmented Dickey-Fuller Test
data: base_de_dados$exp
Dickey-Fuller = -3.8496, Lag order = 1, p-value = 0.01712
alternative hypothesis: stationary
Passamos da estacionaridade, agora falta autocorrelação dos resíduos. Faço o teste Durbin-Watson, com a fórmula funcional (inf ~ `laginf(t-1)` + `laginf(t-2)` + `laginf(t-3)` + exp, data = base_de_dados).
Durbin-Watson test
data: inf ~ `laginf(t-1)` + `laginf(t-2)` + `laginf(t-3)` + exp
DW = 1.7623, p-value = 0.02659
alternative hypothesis: true autocorrelation is greater than 0
Plus temos o correlograma da autocorrelação dos resíduos (res2).
Pela imagem temos uma coluna que não deveria estar acima da zona delimitada, mas mudar a fórmula funcional e acrescentar mais lags parece que piora minha situação.
Tudo isso tendo feito após a famosa regressão:
Call:
lm(formula = inf ~ `laginf(t-1)` + `laginf(t-2)` + `laginf(t-3)` +
exp, data = base_de_dados)
Residuals:
Min 1Q Median 3Q Max
-11.0220 -2.0488 -0.1179 1.5246 19.3868
Coefficients:
Estimate Std. Error t value Pr(>|t|)
(Intercept) -4.90664 0.88060 -5.572 6.91e-08 ***
`laginf(t-1)` 0.36591 0.06330 5.781 2.37e-08 ***
`laginf(t-2)` -0.04894 0.06655 -0.735 0.463
`laginf(t-3)` -0.08102 0.05835 -1.389 0.166
exp 1.87145 0.21564 8.678 6.91e-16 ***
Signif. codes: 0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1
Residual standard error: 3.38 on 234 degrees of freedom
Multiple R-squared: 0.5711, Adjusted R-squared: 0.5638
F-statistic: 77.9 on 4 and 234 DF, p-value: < 2.2e-16
Mais um teste: studentized Breusch-Pagan, dessa vez para testar homocedasticidade:
studentized Breusch-Pagan test
data: inf ~ `laginf(t-1)` + `laginf(t-2)` + `laginf(t-3)` + exp
BP = 23.359, df = 4, p-value = 0.0001074
Faço o decaimento exponencial das expectativas X(t)=X(t-1)*0.9+3*0.1
Consigo a expectativa da inflação do mês seguinte ao que acaba minha base de dados de expectativas. É o mês 6. Então uso os coeficientes descobertos na regressão, parto pro meu excel e cálculo a bendita inflação do período seguinte, do mês 7.
A inflação predita deu 4,7%.
Estamos (enquanto escrevo) no mês 9, logo já tenho os dados da inflação.
A inflação real foi 12%
Virei economista.
Basta a primeira previsão errada econometricamente justificada que se torna verdadeiramente um economista, pois eu sou.
Alimentei meus lags com a inflação que estimei e acrescentei mais uns meses pra minha previsão. Tendência de queda segundo minha previsão, então vejam os jornais, será? Provavelmente fiz algo errado? Talvez, mas bom o que importa é que valeu o exercício! Macroeconometria claramente não é comigo!
Até a próxima
PS: Devo lembrar que esse pequeno exercício é apenas um exercício e não é desprovido de problemas, pelo que meu amigo querido apontou não ajustei para o ciclo econômico e meu modelo tem problema de overfitting.