ANÁLISE DE SÉRIES
TEMPORAIS ECONÔMICAS
Prof. Henrique Dantas Neder – Universidade Federal
de Uberlândia
Processos Estocásticos
Definição: Seja T um conjunto arbitrário. Um
processo estocástico é uma família
Z  {Z (t ), t  T },
tal que, para cada t  T , Z (t ) é uma variável
aleatória.
Um processo estocástico é uma família de
variáveis aleatórias.
O processo estocástico
Z  {Z (t ), t  T }
Está completamente especificado se conhecermos
as funções de distribuição
F ( z1 ,...., zn ; t1 ,...., tn ) 
P Z (t1 )  z1 ,...., Z (tn )  zn 
para todo
n 1
Processos estocásticos
estacionários
Um processo estocástico Z  {Z (t ), t  T } é
estritamente estacionário se todas as funções de
distribuições permanecem as mesmas no decorrer
do tempo, ou seja,
F ( z1 ,...., zn ; t1   ,...., tn   ) 
F ( z1 ,...., zn ; t1 ,...., tn )
para quaisquer t1,...,tn,
Processo estocástico
estacionário
Todas as distribuições univariadas são invariantes no
tempo:
µ(t)=µ,V(t)=σ2 para todo t  T .
Podemos também supor que µ=0 ou, de forma
alternativa, considerar o processo {Z(t)-µ}
Como
 (t1, t2 )   (t1  t, t2  t )   (t1  t2 ,0)   ( )
Processo estocástico
estacionário
Logo, em um processo estritamente
estacionário,  (t1 , t2 ) é uma função de um
único argumento, ou seja, o valor da
covariância depende apenas da defasagem
temporal.
Processo estocástico
fracamente estacionário
Processo estacionário de 2a. ordem (ou em sentido amplo):
1) E{Z(t)}=µ(t)=µ, constante, para todo t Є T;
2) E{Z2(t)} < ∞; para todo t Є T;
3)
 (t1, t2 )  cov{Z (t1 ), Z (t2 )}
‫׀‬t1 –t2‫׀‬
é uma função de
Autocorrelação
É o coeficiente de correlação
observações defasadas no tempo:
n 1
r1 
 ( x  x )( x
t 1
t
t 1
1
 x2 )
n 1
 (x  x ) (x
2
t 1
t
1
t 1
 x2 )
2
entre
Autocorrelação
onde as médias amostrais são:
n 1
x1   xt (n  1)
i 1
n
e
x2   xt (n  1)
i 2
Autocorrelação
Costuma-se simplificar a expressão anterior da
seguinte forma:
n 1
r1 
Já que
 (x
t 1
t
 x )( xt 1  x )
n 1
(n  1) ( xt  x ) 2 n
x1  x2
t 1
e assumindo variância constante.
Autocorrelação
A expressão anterior pode ser generalizada para k
períodos de tempo (defasagem):
nk
rk 
 (x
t 1
t
 x )( xt  k  x )
n 1
 (x
t 1
t
 x)
2
Séries aleatórias
Se x1,x2,...,xn são i.i.d (independentes e
identicamente distribuídas) então o
coeficiente de autocorrelação amostral rk é
assintoticamente normalmente distribuído
com média e variância dados por:
E(rk )  1/ n e Var(rk )  1/ n
Processo ruído branco - Stata
* simulação de um processo ruído branco e um passeio
aleatório
drawnorm ruido, n(500) seed(500)
gene tempo = _n
tsset tempo
twoway (tsline ruido)
wntestq ruido
0
-2
-4
ruido
2
4
Simulação de um processo ruído branco – todas as
variáveis Xt tem distribuição normal com média µ=0 e
σ=1
0
100
200
300
tempo
400
500
Processo Passeio Aleatório Stata
set obs 500
gen int t = _n
gen sumz = sum(invnorm(uniform()))
tset t
twoway (tsline sumz)
O passeio aleatório é não estacionário.
A sua especificação econométrica é:
Yt=Yt-1+at, at~N(0,σ2)
-5
-10
-15
sumz
0
5
Simulação de um processo passeio aleatório (“random
walk”)
0
100
200
300
t
400
500
Processo Passeio Aleatório Stata
Ou um passeio aleatório com tendência:
Yt=β0+Yt-1+at, at~N(0,σ2)
Se β0, então em média, Yt aumenta.
A melhor previsão da série para t+1 é
Yt+β0. No modelo anterior, passeio aleatório
sem tendência, a melhor previsão da série
t+1 é Yt.
Processo Passeio Aleatório
O modelo de passeio aleatório é uma caso especial do
modelo AR(1) – auto-regressivo de primeira ordem:
Yt=β1Yt-1+at, at~N(0,σ2)
quando β1=1, o modelo AR é não estacionário e sua
variância aumenta ao longo do tempo.
Na equação Yt=Yt-1+at, at~N(0,σ2)
Var(Yt) = Var(Yt-1)+Var(at)
Para que Yt seja estacionário Var(Yt) = Var(Yt-1), mas
para isto Var(at) = 0
Processo Passeio Aleatório
Y0=0 , Y1=a1, Y2=a1+a2,Yt=a1+a2+...+at
Var(Yt)=t.σ2 : a variância aumenta a medida que t
aumenta.
No caso de um modelo auto-regressivo de ordem p
(AR(p)):
Yt=β1Yt-1+β2Yt-2+...+βpYt-p+at, at~N(0,σ2)
Para ser estacionário todas as raízes do polinômio
1-β1z-β1z2-...βpzp
devem ser maiores do que 1 em valor absoluto.
Testes de raiz unitária –
Dickey-Fuller
Consideremos o modelo AR(1):
Zt = θ1Zt-1+at , at~N(0,σ2)
ΔZt = θ’1Zt-1+at θ’1 = θ1-1
H0 {θ’1 = 0
HÁ {θ’1 < 0
Testes de raiz unitária –
Dickey-Fuller aumentado
Z t   0   Z t 1   1Z t 1   2 Z t 2  ...   p Z t  p  ut
H 0{  0 (Zt tem uma tendencia estocastica)
H A {  0 (Zt é estacionaria)
•O
número de defasagens p pode ser obtido utilizando os
critérios AIC (Akaike) ou Schwarz que veremos adiante.
• A estatística ADF não tem distribuição normal, mesmo
para amostras grandes.
Testes de raiz unitária –
Dickey-Fuller aumentado
use http://www.stata-press.com/data/r8/lutkepohl.dta
tsset qtr
twoway (tsline investment)
dfuller investiment
dfuller D.investment
dfuller D.investment, lags(4)
fitstat
dfuller D.investment, lags(3)
fitstat
dfuller D.investment, lags(2)
fitstat
600
400
200
Investment
800
1000
Evolução temporal da série investimento – antiga
Alemanha Ocidental
1960q1
1965q1
1970q1
1975q1
qtr
1980q1
1985q1
Testes de raiz unitária –
Dickey-Fuller aumentado
Com a seguinte seqüência de comandos Stata,
verifique a estacionariedade de um passeio
aleatório:
set obs 500
gen int t = _n
gen sumz = sum(invnorm(uniform()))
tset t
dfuller sumz
dfuller D.sumz
twoway (tsline D.sumz)
-4
-2
D.sumz
0
2
Evolução temporal da diferença de um passeio aleatório
0
100
200
300
t
400
500
Existem alguns problemas adicionais com relação a testes de
raiz unitária:
1) Eles tem baixo poder para discriminar entre uma raiz unitária
e um processo próximo de raiz unitária.
2) Eles podem usar um conjunto inapropriado de regressores
determinísticos.
3) Para os testes deve ser considerada a possibilidade de
quebra estrutural.
Os testes ADF devem considerar o seguinte conjunto de
equações:
p
yt   yt 1   i yt i 1   t
i 2
p
yt  a0   yt 1   i yt i 1   t
i 2
p
yt  a0   yt 1  a2t   i yt i 1   t
i 2
Operadores para séries
temporais
Operador translação para o passado
BZt=Zt-1 BmZt=Zt-m
Operador diferença
ΔZt=Zt-Zt-1=(1-B)Zt Δ = 1 – B
Operador
soma

2
SZt=  Z t  j  Z t  Z t 1  ...  (1  B  B  ...) Z t
j 0
 (1  B ) Z t
 S= -1
Modelos ARMA (Box-Jenkins)

ARMA(p,q)
Z t  1Z t 1  ...   p Z t  p  at  1at 1  ...   p at  p
ou
 ( B) Zt   ( B)Z t
onde
 ( B )  1  1 B  2 B  ...   p B
2
p
 ( B )  1  1 B   2 B 2  ...   p B p
Modelos ARMA (Box-Jenkins)

Filtro linear
Ψ(B)
Filtro linear
at
zt
Zt=μ+at+ψ1at-1+ ψ2at-2+...=μ+ ψ(B) at
Onde
ψ(B)=1+ψ1B+ ψ2B2+...
Modelo ARMA(1,1)













Zt=0,8Zt-1+at-0,3at-1
Simulação no Stata:
drawnorm a, n(50) seed(500)
gene tempo = _n
tsset tempo
set matsize 800
gene z = 0
mkmat a z,matrix(Z)
forvalues i = 2(1)50 {
matrix Z[`i',2]=.8*Z[`i'-1,2]+Z[`i',1]-.3*Z[`i'-1,1]
}
svmat Z, name(serie)
twoway (tsline serie2)
Função de autocorrelação
parcial
Seja um modelo autorregressivo AR(k):
Zt  k1Zt 1  k 2 Zt 2  ...  kk Zt k
 j  k1 j 1  k 2  j 2  ...  kk  j k , j = 1,...,k
Temos assim as equações de Yule-Walker:
Equações de Yule-Walker
1
 2 ...
1

 2 ...
 1 1
.

.

 k 1  k  2  k 3 ...
 k 1 
  k1   1 
k 2  
  
k 2    2 



1
  ...
 
  kk




 ... 
 
 k 
Função de autocorrelação
parcial
Resolvendo para k =1,2,3...
11  1
1
1
 2  2  12

1
1  12
1
1
1
22 
1
33 
1
1
1
2
1
1
1
2
1
1
2
3
2
1
1
1
1
1
e em geral,
kk 
*k
k
Onde Pk é a matriz de autocorrelações e Pk* é a matriz Pk com a última
coluna substituída pelo vetor de autocorrelações (ver Morettin, 2004).
Modelos ARMA
1.
2.
3.
Um processo AR(p) tem fac que decai de
acordo com exponenciais e/ou senoides
amortecidas, infinita em extensão;
Um processo MA(q) tem fac finita, com um
corte após o lag q;
Um processo ARMA(p,q) tem fac infinita em
extensão, que decai de acordo com
exponenciais e/ou senoides amortecidas após
o lag q-p
Modelos ARMA
1.
2.
3.
Um processo AR(p) tem facp Økk≠0, para
k≤p e Økk=0, para k >p;
Um processo MA(q) tem facp que se
comporta de maneira similar à fac de um
processo AR(p);
Um processo ARMA(p,q) tem facp que se
comporta como a facp de um processo
MA puro (ver Morettin, 2004)
Modelos ARMA
Vamos simular no Stata diversos processos ARMA e
verificar a sua fac e fapc. Para isto baixe o arquivo dofile:
http://www.ecn26.ie.ufu.br/TEXTOS_ESTATISTICA/SIMULACAO%20ARMA.do
Modelos ARMA
Processo MA(1)
1
-2 -1
-4
0
50
100
tempo
150
200
-4
-2
0
2
4
Processo ARMA(1)
serie4
0
serie3
0
-2
serie2
2
2
4
3
Processo AR(1)
0
50
100
tempo
150
200
0
50
100
tempo
150
200
Correlograma processo AR(1)
Correlograma processo MA(1)
Correlograma processo
ARMA(1,1)
Identificação de modelos
ARMA
ARIMA(1,0,0)
ARIMA(0,0,1)
ρk decai exponencialmente
Somente Ø11≠0
Somente ρ1 ≠0
Økk decai exponencialmente
ARMA(2,0,0)
ARMA(0,0,2)
ρ k – mistura de exponenciais ou senoides
amortecidas
Ø11≠0 e Ø22≠0
ρ1 ≠0 e ρ2 ≠0
Økk – mistura de exponenciais ou senoides
amortecidas
ARMA(1,0,1)
ρ k decai exponencialmente após o lag 1
Økk decai exponencialmente após o lag 1
Outras alternativas de
identificação de modelos ARMA

Critério de informação de Akaike:
AIC(k, l )  N ln ˆ k2,l  2(k  l  2)
onde:
ˆ k2,l
é a estimativa de máxima verossimilhança da
variância dos resíduos do modelo ARMA(k,l)
ajustado às N observações da série.
Outras alternativas de
identificação de modelos ARMA

Critério de informação Bayesiano
BIC (k , l )  ln ˆ
2
k ,l
ln N
 (k  l )
N
onde:
ˆ k2,l é a estimativa de máxima verossimilhança da
variância dos resíduos do modelo
ajustado às N observações da série.
ARMA(k,l)
Aplicação dos critérios AIC e BIC através do Stata- aplicados a série
gdp diferenciada(produto interno bruto) dos EUA – Exemplo Gujarati
Aplicação dos critérios AIC e BIC através do Stata
Aplicação dos critérios AIC e BIC através do Stata
Modelo
AIC
SIC
-2log
likelihood
No. de
parâmetros
AR(1 8 9 12)
MA(1 2 8 12)
853.78007
875.97324
835.78007
9
ARMA(1,1)
865.28999
872.68771
859.28999
3
ARMA(2,1)
866.95925
876.82288
858.95925
3
ARMA(1,2)
867.10988
876.97351
859.10988
4
Verificação da adequação do modelo diagnóstico
Para verificar a adequação do modelo aos dados, um dos
procedimentos utilizados é verificar se os resíduos são
auto-correlacionados.
 Os resíduos do modelo podem ser obtidos através do
comando predict:
arima d.gdp, ar(1) ma(1)
predict residuo, residuals
corrgram residuo
ac residuo

-0.40
-0.20
0.00
0.20
0.40
Verificação da adequação do modelo diagnóstico
0
10
20
Lag
30
40
Bartlett's formula for MA(q) 95% confidence bands
Aparentemente, os resíduos do modelo ARMA(1,1) não são
auto-correlacionados (com exceção do lag 8, as correlações
dos resíduos defasados não são significativas).
Introdução a Análise VAR – Vector
Autoregressive Regression
Considere o sistema bi-variado simples:
yt  b10  b12 zt   11 yt 1   12 zt 1   yt
zt  b20  b21 yt   21 yt 1   22 zt 1   zt
Assume-se que:
1) yt e zt são séries estacionárias
2) εyt e εzt são erros aleatórios ruído branco com desvios-padroes
σy e σz respectivamente.
3) εyt e εzt são séries não auto-correlacionadas
b12 é o efeito contemporâneo de uma mudança unitária de zt em
y.
Podemos colocar este sistema na forma matricial:
 1

 b21
ou
b12   yt   b10    11  12   yt 1    yt 
 
      

1   zt   b20    21  22   zt 1    zt 
Bxt   0  1 xt 1   t
ou
xt  A0  A1 xt 1  et
onde :
 yt 
xt    , A 0  B 1 0 , A1  B 11 , et  B 1 t
 zt 
A Função de Impulso-Resposta
Considere um modelo VAR bi-variado:
yt  1 yt 1   t
onde:
 y1,t 
y t  

 y2,t 
 1,t 
 t   
  2,t 
 1,1 1,2 
1  



2,1
2,2 

Considere os efeitos dos choques correntes e passados na
serie yt. Por exemplo, um choque unitário ε1,t tem um efeito
de aumentar y1,t em uma unidade e ε2,t tem um efeito similar
sobre y2,t. Mas examinemos os efeitos de outros choques e
choques passados.
Fazendo repetidas substituições para trás:
yt  1t y0  1t 11  ...  12 t  2  1 t 1   t
 y1,t 
 1,1 1,2   1,t 1 
t
t 1
2

  1 y0  1 1  ...  1  t  2  
   t 
 
 2,1 2,2    2,t 1 
 y2,t 
 1,11,t 1  1,2  2,t 1 
t
t 1
2
1 y0  1 1  ...  1  t 2  
   t
 2,11,t 1  2,2  2,t 1 
Isto torna claro que o efeito de uma unidade no choque ε1,t-1
sobre y1,t é Φ1,1 e que o mesmo choque tem um efeito de Φ2,1
sobre y2,t.
O impulso-resposta de segunda ordem é obtido por:
2


1,11,2  1,22,2 
1  1,22,1
2
1  

2
2,11,2  2,2 
 2,11,1  2,22,1
2
 y1,t 


1,11,2  1,22,2   1,t  2 
1  1,22,1
t
t 1

  1 y0  1 1  ...  
 

2
2,11,2  2,2    2,t 2 
 y2,t 
 2,11,1  2,22,1
 1 t 1   t
Generalizando: o efeito de uma unidade do choque ε1,t-h
sobre y1,t é dado pelo elemento superior esquerdo da matriz
Φ1h. Em geral, o efeito sobre yi,t de uma unidade de choque
εj,t-h é dado pelo elemento (i,j) da matriz Φ1h.
Para as aplicações a seguir iremos utilizar o arquivo de dados
Stata obtido através do comando:
use http://www.ecn26.ie.ufu.br/DADOS/money.dta
Este comando irá carregar através da web o arquivo de
dados para o Stata.
Para obter um modelo VAR o primeiro passo a ser executado
é a obtenção de seu número de lags. Isto é conseguido
através do comando varsoc:
set matsize 800
varsoc y m inf, maxlag(7)
Determinação do número de lags de um modelo VAR
irrestrito
Pelo resultado anterior, de acordo com os critérios de
AKAIKE (AIC), Final Predction Error (FPE) e Likelihood Ratio
Test (LR) a melhor estrutura de lags corresponde ao
modelo de 4 lags.
Rodamos então o modelo VAR com 4 lags através do
comando:
var y m inf, lags(1/4)
O resultado em si das estimativas MQO do modelo não tem
valor analítico para o tipo de análise que iremos fazer a
seguir. Portanto, para suprimir a saída das estimativas do
modelo, iremos executar o comando:
quietly var y m inf, lags(1/4)
Teste de normalidade dos resíduos para modelo VAR
Pelos resultados do teste Jarque-Bera, os resíduos para as
equações das variáveis y e m são normais ao passo que para
a equação da variável inf é rejeitada a hipótese nula de
normalidade dos resíduos.
É importante também verificar a condição de não autocorrelação dos resíduos do modelo. Utiliza-se para isto o
comando:
varlmar
Pelos resultados da saída Stata a seguir, os resíduos do
modelo apresentam auto-correlação de primeira ordem, mas
não apresentam auto-correlação de segunda ordem.
Teste de auto-correlação dos resíduos do modelo VAR
Para realizar a análise das funções impulso-resposta e
decomposição de variância no Stata temos uma seqüência de
comandos:
irf set “arquivo1”
irf create modelo1
irf table irf fevd
Com estes comandos especificamos a saída para as funções
impulso-resposta e decomposição de variância, mostradas a
seguir.
Funções impulso-resposta e decomposição de variância
para modelo VAR
Decomposição de variância
• Diferentemente da análise de impulso-resposta, na
decomposição de variância estamos interessados em
avaliar a importância relativa (percentual) sobre os
erros de previsão para uma determinada variável.
• Na análise de impulso-resposta podemos verificar o
sentido dos efeitos de cada variável (impulso) sobre
as outras variáveis (resposta). O efeito neste caso
pode ser positivo ou negativo.
• No caso da decomposição de variância esta noção
de sentido dos efeitos já não existe, mas apenas o
valor relativo dos efeitos de cada variável sobre o
erro de previsão de uma determinada variável.
Funções Impulso-Resposta para Modelo VAR
modelo1, inf, inf
modelo1, inf, m
modelo1, inf, y
modelo1, m, inf
modelo1, m, m
modelo1, m, y
modelo1, y, inf
modelo1, y, m
modelo1, y, y
1
.5
0
-.5
1
.5
0
-.5
1
.5
0
-.5
0
2
4
6
8
0
2
4
6
8
0
2
4
step
95% CI
impulse response function (irf)
Graphs by irfname, impulse variable, and response variable
6
8
• Nos gráficos da primeira coluna do slide anterior vemos
as respostas das três variáveis sobre a inflação. No
primeiro gráfico desta coluna vemos o efeito resposta de
uma variação unitária do choque exógeno na equação da
inflação sobre a própria inflação quando transmitido
através dos seus efeitos multiplicadores pelo conjunto do
sistema. Ele mostra que a inflação tem efeitos sobre seus
próprios valores futuros até o terceiro ou quarto lags.
• Observando a segunda linha de gráficos verifica-se que
a oferta monetária não produz efeito futuro sobre as
variáveis inflação (inf) e Produto Interno Bruto (y). Ela
apresenta um impacto significativo sobre a própria oferta
monetária até o segundo lag.
• Isto sugere que há uma fraca relação dinâmica entre as
variáveis do modelo.
Um comando apropriado para o Stata para gráficos de
decomposição de variância é:
irf graph fevd, irf(modelo1)
Isto também pode ser obtido através do menu:
Statistics => Multivariate time series => IRF & FEDV
Analysis => Graphs by Impulse or response (e especifique
em Statistics to graph: fevd)
Decomposição de variância para Modelo VAR
modelo1, inf, inf
modelo1, inf, m
modelo1, inf, y
modelo1, m, inf
modelo1, m, m
modelo1, m, y
modelo1, y, inf
modelo1, y, m
modelo1, y, y
1
.5
0
1
.5
0
1
.5
0
0
2
4
6
8
0
2
4
6
8
0
2
4
step
95% CI
fraction of mse due to impulse
Graphs by irfname, impulse variable, and response variable
6
8
Download

- Henrique Dantas Neder