ebook img

Séries Temporais em R PDF

105 Pages·2015·1.11 MB·Portuguese
by  
Save to my drive
Quick download
Download
Most books are stored in the elastic cloud where traffic is expensive. For this reason, we have a limit on daily download.

Preview Séries Temporais em R

SØries Temporais em R∗ Ricardo Lima† ∗Este arquivo ainda encontra-se em fase de constru(cid:231)ªo. Logo, nªo deve ser citado e nem usado como referŒncia para trabalhos acadŒmicos. †Economista pela Universidade Federal Fluminense e Mestrando em economia pela Universidade de Estocolmo. Email para contato: [email protected]. SumÆrio 1 Introdu(cid:231)ªo 5 1.1 Por que usar o R? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5 1.2 O que Ø uma sØrie de tempo? . . . . . . . . . . . . . . . . . . . . . . . . . 7 1.3 Porque analisar sØries de tempo? . . . . . . . . . . . . . . . . . . . . . . . 7 2 Come(cid:231)ando os trabalhos 8 2.1 Importando e visualizando os dados . . . . . . . . . . . . . . . . . . . . . . 8 3 Fatos estilizados do Ciclo de Neg(cid:243)cios 11 3.1 Removendo tendŒncias de sØries univariadas . . . . . . . . . . . . . . . . . 11 3.1.1 Removendo sazonalidade . . . . . . . . . . . . . . . . . . . . . . . . 11 3.1.2 TendŒncia de longo prazo . . . . . . . . . . . . . . . . . . . . . . . 16 3.2 Calculando correla(cid:231)ıes c(cid:237)clicas . . . . . . . . . . . . . . . . . . . . . . . . . 22 3.3 Defasagens no R . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23 3.4 Calculando a volatilidade c(cid:237)clica . . . . . . . . . . . . . . . . . . . . . . . . 24 4 Modelos univariados 26 4.1 Alguns conceitos bÆsicos . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27 4.2 Processos de mØdias m(cid:243)veis . . . . . . . . . . . . . . . . . . . . . . . . . . 29 4.3 Processos autoregressivos . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31 4.3.1 O operador de defasagem, L . . . . . . . . . . . . . . . . . . . . . . 33 4.3.2 Passeio aleat(cid:243)rio . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34 4.3.3 Passeio aleat(cid:243)rio com drift . . . . . . . . . . . . . . . . . . . . . . . 35 4.3.4 Processos tendŒncia-estacionÆrios . . . . . . . . . . . . . . . . . . . 37 5 Fun(cid:231)ªo de autocorrela(cid:231)ªo 38 6 Fun(cid:231)ªo de autocorrela(cid:231)ªo parcial 40 6.1 Um breve resumo dos resultados . . . . . . . . . . . . . . . . . . . . . . . . 41 7 Processos ARMA 43 7.1 Estimando modelos ARIMA - Intro . . . . . . . . . . . . . . . . . . . . . . 43 7.1.1 A metodologia Box-Jenkins - Intro . . . . . . . . . . . . . . . . . . 43 2 8 Testes de estacionaridade 45 8.1 O teste de Dickey-Fuller . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45 8.2 O Poder do teste de Dickey-Fuller de ra(cid:237)z unitÆria . . . . . . . . . . . . . . 51 8.3 O teste de Dickey-Fuller Aumentado . . . . . . . . . . . . . . . . . . . . . 52 8.4 O teste de Phillips-Perron . . . . . . . . . . . . . . . . . . . . . . . . . . . 53 8.5 O teste ADF sequencial . . . . . . . . . . . . . . . . . . . . . . . . . . . . 54 9 Estimando modelos ARIMA 64 9.1 A metodologia Box-Jenkins . . . . . . . . . . . . . . . . . . . . . . . . . . 64 9.2 A metodologia Box-Jenkins - Um exemplo prÆtico . . . . . . . . . . . . . . 65 9.2.1 Ordem de integra(cid:231)ªo . . . . . . . . . . . . . . . . . . . . . . . . . . 66 9.2.2 Escolhendo p e q . . . . . . . . . . . . . . . . . . . . . . . . . . . . 68 9.2.3 Estimando um modelo ARMA . . . . . . . . . . . . . . . . . . . . . 69 9.2.4 Diagn(cid:243)sticos dos res(cid:237)duos . . . . . . . . . . . . . . . . . . . . . . . . 71 10 Previsªo com modelos ARIMA 77 10.1 Usando modelos ARIMA para construir previsıes . . . . . . . . . . . . . . 77 10.1.1 O caso do processo autoregressivo . . . . . . . . . . . . . . . . . . . 77 10.1.2 O caso do processo de mØdias m(cid:243)veis . . . . . . . . . . . . . . . . . 78 10.2 Prevendo com o R . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 79 10.3 Avaliando previsıes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 81 11 Modelos multivariados 86 11.1 Modelos din(cid:226)micos com variÆveis estacionÆrias . . . . . . . . . . . . . . . . 86 11.2 Modelos de corre(cid:231)ªo de erro . . . . . . . . . . . . . . . . . . . . . . . . . . 88 11.3 Estimando e testando . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 88 11.4 Causalidade de Granger . . . . . . . . . . . . . . . . . . . . . . . . . . . . 88 11.5 Propriedades dos estimadores de MQO: Amostra Finita . . . . . . . . . . . 89 11.5.1 Estimadores nªo viesados . . . . . . . . . . . . . . . . . . . . . . . 89 11.5.2 Estimadores e(cid:28)cientes . . . . . . . . . . . . . . . . . . . . . . . . . 89 11.5.3 InferŒncia . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 90 11.6 Propriedades assint(cid:243)ticas dos estimadores de MQO . . . . . . . . . . . . . 90 11.7 Modelos din(cid:226)micos com variÆveis nªo estacionÆrias . . . . . . . . . . . . . 91 11.7.1 Regressªo espœria . . . . . . . . . . . . . . . . . . . . . . . . . . . . 91 3 11.8 Cointegra(cid:231)ªo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 93 11.9 Cointegra(cid:231)ªo e modelos de corre(cid:231)ªo de erro . . . . . . . . . . . . . . . . . . 94 11.10Estimando um modelo de corre(cid:231)ªo de erro usando o mØtodo de dois passos de Engle-Granger . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 95 11.11Estimando um modelo de corre(cid:231)ªo de erro em um passo . . . . . . . . . . . 100 11.12Um pouco mais sobre cointegra(cid:231)ªo . . . . . . . . . . . . . . . . . . . . . . 102 11.12.1Cointegra(cid:231)ªo e Causalidade de Granger . . . . . . . . . . . . . . . . 103 ReferŒncias 105 4 1 Introdu(cid:231)ªo A idØia deste trabalho Ø somente de fornecer uma (cid:17)porta de entrada(cid:17) para alunos com algum interesse em programa(cid:231)ªo e em econometria de sØries temporais. Vale destacar que ele se baseia fortemente no curso de sØries temporais, dado no primeiro ano de mestrado em economia da Universidade de Estocolmo, com dura(cid:231)ªo de 8 semanas. Todo trabalho serÆ feito no GUI do R chamado RStudio. Para come(cid:231)ar vocŒ deve instalar o R e, em seguida, o RStudio. Caso tenha interesse tambØm de aprender a produzir documentos LATEXutilizando o RStudio recomendo entrar em PreferŒncias e em seguida Sweave. Finalmente, alterando a primeira op(cid:231)ªo dispon(cid:237)vel para knitr. Desta maneira a manipula(cid:231)ªo do c(cid:243)digo dentro do arquivo .Rnw serÆ mais parecido com o pr(cid:243)prio LATEX. Para isso serÆ necessÆria a instala(cid:231)ªo do pacote knitr e do programa MikTeX. Note que muitos dos pacotes nªo estarªo dispon(cid:237)veis no seu RStudio, logo deverªo ser instalados. Isto pode ser feito atravØs do menu de Ferramentas. Finalmente, note que vocŒ pode alterar o diret(cid:243)rio de trabalho do RStudio, ou seja, onde todo o trabalho serÆ salvo. Isto pode ser feito atravØs do RStudio na janela inferior 1 direita ou atravØs do seguinte comando : setwd("C:/Desktop/Nome/R/") 1.1 Por que usar o R? Nosso primeiro contato com econometria na prÆtica Ø, quase sem exce(cid:231)ªo, atravØs de programas economØtricos de relativo fÆcil acesso a todos os comandos (como Ø o caso de Gretl, Stata e Eviews). Desta maneira, (cid:28)camos acostumados desde o in(cid:237)cio a clicar em determinados comandos e obter resultados diretamente, algo que didaticamente Ø (cid:243)timo especialmente em se tratando de uma matØria tªo (cid:17)adorada(cid:17) como a econometria. Por isso, em geral, come(cid:231)ar a usar o R (ou qualquer linguagem de programa(cid:231)ªo) Ø um grande 1Note que se usa / e nªo \. 5 desa(cid:28)o pois alØm de aprender uma nova (cid:17)lingua(cid:17) temos que aprender a nos expressar nela de maneira l(cid:243)gica. (cid:201) esta (cid:17)l(cid:243)gica(cid:17) que na minha opiniªo Ø o mais dif(cid:237)cil de se aprender. Creio que o principal motivo de se utilizar o R estÆ na capacidade de se repetir e reproduzir processos. (cid:201) (cid:243)bvio que podemos usar um destes programas para estimar 10- 20 varia(cid:231)ıes de um mesmo modelo, porØm quanto tempo isso irÆ levar ? Como serªo armazenados os resultados ? Obviamente alguØm pode entªo responder: mas tambØm Ø poss(cid:237)vel programar e (cid:17)auto- matizar(cid:17) com estes outros programas! Sim, isto Ø verdade (apesar de muitos nªo saberem disso). O problema aqui Ø que em geral a linguagem Ø bastante espec(cid:237)(cid:28)ca para cada pro- grama e, em geral, nªo seguem a l(cid:243)gica das linguagens mais comuns (como por exemplo Matlab). De maneira mais direta aqui vai alguns pontos a favor e contra o uso do R: Usar R (cid:136) Gratuito; (cid:136) Nªo serve somente para econometria/estat(cid:237)stica; (cid:136) Automatizar/repetir procedimentos; (cid:136) Similiaridade com outras linguagens de programa(cid:231)ªo; (cid:136) Facilidade de divulgar/dividar resultados com outros programas e formatos2 (LATEX, Shiny, PDF, por exemplo); (cid:136) Pacotes e fun(cid:231)ıes sªo atualizados constantemente; (cid:136) Mercado de trabalho (grandes empresas estªo cada vez mais interessados em pro(cid:28)s- sionais que saibam usar R); (cid:136) Te obriga a ter um conhecimento te(cid:243)rico maior; Nªo usar R 2Esta apostila, por exemplo, foi toda feita utilizando a interliga(cid:231)ªo do R com o LATEX. 6 (cid:136) Custo alto de entrada; (cid:136) Trabalhoso para pequenos procedimentos; (cid:136) Econometria/estat(cid:237)stica nªo faz parte do seu dia a dia; (cid:136) Te obriga a ter um conhecimento te(cid:243)rico maior; 1.2 O que Ø uma sØrie de tempo? Uma sØrie de tempo Ø uma cole(cid:231)ªo de variÆveis aleat(cid:243)rias ordenadas ao longo do tempo. O PIB brasileiro no intervalo entre 1950 e 2014, por exemplo, pode ser descrito como uma variÆvel aleat(cid:243)ria, Y , onde {Y }2014 = {Y ,Y ,...,Y }. Ou seja, cada Y Ø uma t t 1950 1950 1951 2014 t variÆvel aleat(cid:243)ria, porØm somente observamos uma œnica realiza(cid:231)ªo dela. Aqui nasce a principal diferen(cid:231)a entre a econometria de cross-section, ou dados de corte, e a de sØries temporais. Com dados de corte temos acesso a N observa(cid:231)ıes das k variÆveis de interesse para um dado instante no tempo, enquanto que no caso de sØries de tempo somente temos 1 observa(cid:231)ªo das k variÆveis de interesse para um dado instante no tempo. Veremos que esta pequena diferen(cid:231)a traz grandes consequŒncias para nosso objetivo (cid:28)nal que, pelo menos na grande maioria dos casos, Ø fazer inferŒncias sobre e tentar descrever o futuro desenvolvimento da variÆvel de interesse. 1.3 Porque analisar sØries de tempo? Qual seria entªo nosso objetivo ao analisar dados de sØrie de tempo? Basicamente o que queremos fazer Ø descrever estatisticamente os dados dispon(cid:237)veis e, alØm disso, descrevŒ- los matematicamente, ou seja, queremos uma equa(cid:231)ªo que nos mostre como a sØrie de interesse se comporta. A partir disto podemos construir novas teorias econ(cid:244)micas ou simplesmente testar teorias jÆ estabelecidas. AlØm disso, podemos, a partir do nosso conhecimento dos dados, tentar construir previsıes para valores futuros das variÆveis em mªos. 7 2 Come(cid:231)ando os trabalhos 2.1 Importando e visualizando os dados Existem muitas maneiras de importar dados para o R, sendo que os formatos mais fÆceis de se trabalhar sªo .txt e .csv. A maneira mais simples de importar os dados para o R Ø usando o RStudio e clicando diretamente no botªo (cid:17)Import Dataset(cid:17) no canto superior direito. Como primeiro exemplo vamos come(cid:231)ar com um banco de dados dispon(cid:237)vel no pr(cid:243)prio R no pacote pwt8. O primeiro passo Ø instalar e carregar o pacote e, em seguida, devemos escolher os dados que vamos analisar: library(pwt8) # Carregando o pacote data("pwt8.0") # Carregando os dados do pacote # VariÆveis escolhidas sªo: # Pib real # MØdia de horas trabalhadas # Taxa de c\^ambio br <-subset(pwt8.0, country=="Brazil", select=c(rgdpna, avh, xr)) A partir desses dados podemos criar novas variÆveis. Que tal criarmos uma proxy, de(cid:28)nida como PIB real dividido pela mØdia de horas trabalhadas, para produtividade: br$prod <- br$rgdpna/br$avh Para (cid:28)nalizar, podemos salvar os dados que separamos como um arquivo .txt e visua- lizar os dados atravØs do comando plot. ’ ’ write.table(br, file= dados.txt ) Agora temos o arquivo dados.txt no nosso diret(cid:243)rio de trabalho. Podemos carregar este e, em seguida, visualizar os dados. Note que, na maioria das vezes, temos que avisar 8 ao R sobre o tipo de dados que estamos usando. Logo, neste caso devemos avisar que estamos utilizando sØries de tempo. ’ ’ dados <- read.table( dados.txt ) dados <- ts(dados, start=1950, freq=1) Aqui o comando ts estÆ avisando ao R que a matriz dados possui sØries temporais que se iniciam em 1950 com frequŒncia 1, ou seja, sªo dados anuais. FrequŒncia 4 e 12 seriam, respectivamente, dados trimestrais e mensais. Note que poder(cid:237)amos escrever este c(cid:243)digo de maneira mais curta : ’ ’ dados <- ts(read.table( dados.txt ), start=1950, freq=1) Para (cid:28)nalizar podemos visualizar os dados atravØs do comando plot. plot(dados) dados a n p 0 d 0 g 00 r 0 5 0 h 05 v 2 a 0 5 80 13. r 5 x 1. 0 0.0 0 d 8 o r p 0 0 2 1950 1960 1970 1980 1990 2000 2010 Time Podemos aprimorar um pouco este grÆ(cid:28)co atravØs das op(cid:231)ıes do comando plot, como pode ser visto abaixo. plot(dados, ’ ’ col= blue , ’ ’ main= Dados brasileiros , ’ ’ xlab= Ano ) 9 Dados brasileiros a n p 0 d 0 g 00 r 0 5 0 h 05 v 2 a 0 5 80 13. r 5 x 1. 0 0.0 0 d 8 o r p 0 0 2 1950 1960 1970 1980 1990 2000 2010 Ano 10

Description:
Ricardo Lima†. ∗Este arquivo ainda encontra-se em fase de construção. Logo, não deve ser citado e nem usado como referência para trabalhos
See more

The list of books you might like

Most books are stored in the elastic cloud where traffic is expensive. For this reason, we have a limit on daily download.