Este documento fornece informações sobre o curso de Econometria Avançada ministrado pelo professor Adriano Figueiredo. O curso terá duração de 68 horas e será realizado nas terças e quintas-feiras nos períodos de 13h15 às 15h15 e de 15h25 às 17h25 no bloco X, sala 2. O documento também apresenta referências bibliográficas sobre o software X13ARIMA-SEATS e seu uso no ajuste sazonal de séries temporais.
I SDTA - Otimização Utilizando Modelo MIP com o Software GAMS e o Solver IBM-...
Topicos de econometria de séries temporais 2020_1
1. 2501.000145-5 TÓPICOS ESPECIAIS EM ECONOMETRIA
C.H.: 68 horas – Turma 2020.1 – sala 2 bloco X
Terça-feira 13h15m a 15h15m e Quinta-feira - 15h25m a 17h25m
Prof. Dr. Adriano Marcos Rodrigues Figueiredo
(UFMS – ESAN – Economia)
E-mail: adriano.figueiredo@ufms.br ou
amrofi@gmail.com
9
**As ideias e opiniões aqui expostas são de responsabilidade do autor e não representam a
opinião da instituição a que pertence.
Esta obra está licenciada com uma Licença Creative Commons Atribuição-CompartilhaIgual 4.0 Internacional.
This work is licensed under a Creative Commons Attribution-ShareAlike 4.0 International License.
3. Referências básicas
• SAX, Christoph. The X-13ARIMA-SEATS vignette. 2016. Disponível em:
<http://www.seasonal.website/seasonal.html>. Ou em <https://cran.r-
project.org/web/packages/seasonal/vignettes/seas.pdf>
• FERREIRA, Pedro C.; MATOS, Daiane M. Usando o R para ensinar Ajuste
Sazonal. São Paulo: FGV, 2017. 18p. Disponível em:
<http://portalibre.fgv.br/lumis/portal/file/fileDownload.jsp?fileId=8A7C82C551
9A547801533DF7BE5E2D0D>
• Census X-13ARIMA-SEATS: Disponível em:
<https://www.census.gov/srd/www/x13as/>
• SAX, C.; EDDELBUETTEL , D. Seasonal Adjustment by X-13ARIMA-SEATS in R.
Journal of Statistical Software, 87(11), 1-17. 2018. doi: 10.18637/jss.v087.i11.
Disponível em: <http://doi.org/10.18637/jss.v087.i11>.
• HYNDMAN e ATHANASOPOULOS - https://otexts.org/fpp2/seats.html
• IMF (2017). Quarterly National Accounts Manual. Chapter 7 - Seasonal
Adjustment. pp.127-164. Disponível
em: <https://www.imf.org/external/pubs/ft/qna/pdf/2017/chapterv7.pdf>. 3
4. Census X-13ARIMA-SEATS ou
x13as
• Escolhido como o software de ajuste sazonal para
uso em estatísticas oficiais de vários países
• Desenvolvido pelo US Census Bureau e Banco da
Espanha em 1967
• Modelagem de RegARIMA para ‘limpar’ séries
• Pode ajustar sazonalmente pelos algoritmos X-11 ou
SEATS
6. X11 => X11-ARIMA => X12-ARIMA
• O programa de ajuste sazonal X11 foi desenvolvido pelo U.S. Bureau of the
Census em 1965 (Shiskin, Young and Musgrave, 1967). Utiliza,
basicamente, filtros de médias móveis para estimar as componentes de
tendência e sazonalidade, porém acarreta problemas com o início e o fim
da série temporal pela baixa qualidade de filtros assimétricos, além
de requerer um grande número de revisões.
• Em 1980, Estella Dagum do Statistics Canada desenvolveu o X11-ARIMA
que permitia a extensão do início e do final das séries temporais através
de um modelo ARIMA (Dagum, 1980).
• Em meados de 1990, o X12-ARIMA foi implementado pelo U.S. Bureau
of the Census possibilitando grandes melhorias ao X11-ARIMA (Findley &
Hood, 1998). A principal foi a inserção de variáveis regressoras
(regARIMA) que podem afetar o comportamento da série temporal como,
por exemplo, quantidade de dias úteis e feriados, e o tratamento de
outliers.
6
7. TRAMO e SEATS
• TRAMO (Time Series Regression with ARIMA Noise,
Missing Observations and Outliers) e SEATS (Signal
Extraction in ARIMA Time Series) são programas
desenvolvidos por Victor Gomez e Agustin Maravall do
Banco da Espanha (Gómez & Maravall, 1997)
• Ambos foram estruturados para serem desenvolvidos
juntos
• O TRAMO pré-ajusta a série removendo diversos efeitos
determinísticos a partir de um modelo de regressão com
processo ARIMA
• O SEATS executa o ajuste sazonal
7
8. TRAMO
• Vantagem sobre o x12: faz a seleção
automática do ARIMA
• Adaptado no X13 – opera junto ao SEATS
8
9. X13-ARIMA-SEATS: junta X12-Arima
com SEATS
• Funciona em 2 etapas:
– Pré-ajuste para efeitos determinísticos e outliers -
Regressores para trading day, feriados ou efeitos
do calendário (Páscoa), outliers aditivos,
mudanças temporárias, mudanças de nível, efeitos
de rampas definidas pelo usuário
– Dessazonalização – X11 ou SEATS
9
10. X13-ARIMA-SEATS - 2ª etapa
• X11: decomposição por filtros de médias
móveis
• SEATS: decomposição baseada no SARIMA
10
11. 11
Programa X13-ARIMA-SEATS
• O programa X13 ARIMA requer certos inputs para
gerar as saídas.
• Os inputs indispensáveis são:
– a(s) série(s) a ajustar; y
– Os parâmetros que direcionam o ajuste (indicar a
transformação dos dados, o período de tempo, o tamanho
do filtro, a inclusão de variáveis exógenas, indicar as saídas
requeridas, etc)
• As principais saídas são os componentes da série
além da série ajustada.
14. Modelo RegARIMA
transformação Processo ARIMA
Regressores para trading day, feriados ou efeitos
do calendário (Páscoa), outliers aditivos, mudanças
temporárias, mudanças de nível, ramps user-
defined effects
Ajustamento ano bissexto, ou ajustamento
“subjetivo” de greves etc.
t
t t
t
Y
log X Z
D
tX
tD
15. RegARIMA
• Modelos de regressão de séries temporais com
erros ARIMA utilizados para corrigir
autocorrelação
• Usados para forecast/backcast
– reduz revisões para as séries ajustadas sazonais
causadas por médias móveis assimétricas utilizadas no
método X-11
– Também utilizada para prever componentes das
contas nacionais
• ‘Limpar’ a série temporal: estimar e remover
outliers, quebras etc
17. Diagnósticos do X13-ARIMA-SEATS
• Validade do modelo SARIMA: Testes
– De significância dos parâmetros
– De normalidade dos resíduos (Shapiro-Wilk)
– De autocorrelação residual (Ljung-Box)
• Verificação da sazonalidade: QS
• Análise Gráfica: SI ratio e Spectral
17
18. Seleção automática do modelo
• X-13ARIMA-SEATS tem duas rotinas para a seleção automática
do modelo:
– Pickmdl
– Automdl
• Pickmdl foi utilizada em versões anteriores do software (do
X-11-ARIMA e anteriores)
• Automdl é baseado numa rotina do TRAMO (disponível a
partir do X-12-ARIMA)
19. Passos para o RStudio
• Package ‘seasonal’ e ‘seasonalview’
• R Interface to X-13-ARIMA-SEATS
• https://cran.r-
project.org/web/packages/seasonal/vignettes/seas.pdf
• https://github.com/christophsax/seasonalview
• Exemplos:
• https://github.com/christophsax/seasonal/wiki/Exampl
es-of-X-13ARIMA-SEATS-in-R
• Ferreira e Matos (2017). Usando o R para ensinar
Ajuste Sazonal. São Paulo: FGV, 18p.
19
20. Passos para ficar operacional
• Uma vez indicado onde rodará o x13, vamos
baixar a série
• Atualizar o endereço em setwd!
20
26. Rodando o automático
ajuste <- seas(x = consumo.ts)
# avaliação do automático
1. Verificar teste de sazonalidade QS;
2. Diagnosticar pré-ajuste e modelo ARIMA;
3. Verificar indícios de sazonalidade ou efeitos
de dias úteis graficamente;
4. Estabilidade do ajuste sazonal;
26
28. QS (autocorrelações em defasagens
sazonais)
• A hipótese nula do teste QS é
de não haver sazonalidade
• P-value=0 => TEM SAZONALIDADE
• H0: não tem sazonalidade
• qsori: original;
• qsorievadj: original corrigida por valores
extremos;
• qsrsd: resíduos do modelo ARIMA;
• qssadj: série temporal com ajuste
sazonal;
• qssadjevadj: série temporal com ajuste
sazonal corrigida por valores extremos;
• qsirr: componente irregular;
• qsirrevadj: componente irregular
corrigida por valores extremos.
28
29. Summary(ajuste) – ex: Morettin
próximo passo é diagnosticar o pré-ajuste e o
modelo ARIMA
29
30. Códigos comuns de outliers:
ver documentação do x13-arima-seats
• Weekday:
• Labor Day:
• Thanksgiving:
• Outlier level shift (LS): LS1987.Mar
• point ou Additive Outlier (AO): AO1990.Mar
• Seasonal Outlier (SO)
• Sequence level shift (LSS)
• Sequence point ou Additive Outlier (AOS)
• Temporary Change (TC)
30
Poupança
bloqueada: Collor
Sarney: cruzado
fraco, inflação
100%aa
33. Outliers
• Um de cada vez x todos de uma só vez?
• Dias de feriado no Brasil
33
34. • Por padrão, o ‘seas’ usa o ajuste sazonal SEATS
– Transformation selection (log / no log)
– Detection of trading day (dias úteis) e Easter
(Páscoa) e outros
– Outlier detection
– ARIMA model search
• Se quiser o X11, fazer:
seas(consumo.ts, x11 = "")
34
35. X13as automático
• No automático:
– ARIMA-SEATS
– Transformation selection (log / no log)
– Detection of trading day and Easter e etc
– Outlier detection
– ARIMA model search
• No manual, especificar cada um:
35
38. Padrão do seas
• Ajuste sazonal baseado no SEATS com detecção
automática de outlier e ARIMA automático
baseado no TRAMO
– Transformation selection (log / no log)
– Detection of trading day and Easter e etc
– Outlier detection
– ARIMA model search
• Faremos as previsões futuras dos valores
sazonalmente ajustados, e acharemos os valores
ajustados sazonais, valores de tendências, fatores
sazonais e componentes irregulares
38
39. Componentes do X11 -
d10,d11,d12,d13,d16,d18
• d10: fator estacional
• d11: serie dessazonalizada
• d12: tendência-ciclo
• d13: componente irregular
• d16: fator calendário e sazonal combinados (d10 e
d18)
• d18: fator calendário
39
45. Testes
• Estacionariedade: ACF; PACF; unit root default
• Autocorrelação: Ljung-Box Q
• Normalidade: ‘a’ de Geary's e Kurtosis statistical
tests; Skewness
• Sazonalidade:
– QS test nas séries finais; H0: não tem sazonalidade na série
– Códigos para a significância são mostrados se a H0 for
rejeitada *, **, ***
45
47. Ajuste de calendário Brasileiro
Pedro Costa Ferreira (FGV)
• Verificar por que alguns ‘easter’ aparecem
divididos entre meses do mesmo ano: porque no
formato de ‘genhol’ trabalhar, ele “centra” ou
“distribui” o efeito durante o período anterior e
posterior ao feriado
– Ver
https://www.census.gov/ts/TSMS/wingenhol/wingen
holexamples.pdf
• # na variavel regs, que será usada em xreg,
• # posso colocar também variáveis adicionais para
explicar a dependente
47
48. X13as em R
projeto: <suavizacao exponencial.Rproj>
• Script adaptado do github de Pedro Costa
Ferreira, para ajuste dos feriados de Pascoa e
Carnaval no Brasil
• ### COLOCAR NATAL E OUTROS FERIADOS
IMPORTANTES PARA MODELAR O VAREJO
48