Baixe o app para aproveitar ainda mais
Esta é uma pré-visualização de arquivo. Entre para ver o arquivo original
* Modelando PassThrough no Brasil * Refs: http://www.scielo.br/pdf/ee/v46n2/0101-4161-ee-46-02-0343.pdf * http://www.scielo.br/pdf/rec/v18n3/1415-9848-rec-18-03-00333.pdf * https://www.anpec.org.br/encontro/2017/submissao/files_I/i7-4f9f3aa77740343b1ae17ed47a4e67c1.pdf * Copie o caminho da pasta onde estão os dados cd "C:\Users\Lenovo\Documents\cursos\econometria III UFRJ" import excel "pass through 2017.xls", sheet("Dados") firstrow rename Data data saveold "ppp_passth2017.dta", replace use "ppp_passth2017.dta", clear ** Arrumando as datas (quando data é um string) destring data, replace gen time=_n gen year=int(data) gen uno=1 sort year by year: gen mes=sum(uno) gen Data=ym(year, mes) format Data %tm * há um erro na variável IPA nos EUA replace US_IPA=US_IPA*10 if data<2009.01 * definindo time series tsset Data * Criando variáveis em logs para modelagem * Usando minúsculas para logs gen ipca=log(IPCA) gen e=log(E) * variáveis em diferenças gen infl=d.ipca gen de=d.e ******************** Análise ARIMA para inflação * Análise posterior a 2004 para evitar pico de inflação de 2003. drop if data<2005.01 twoway (line ipca Data, sort) (line infl Data , yaxis(2)), scheme(s2mono) * Correlogramas em nivel e em diferenças corrgram ipca , yw corrgram infl , yw **** teste de Raiz Unitária - confirmar a presença de raiz unitária indicada **** pelos correlogramas * seleção de defasagens varsoc ipca, maxlag(13) varsoc infl, maxlag(13) * realização do teste dfuller ipca, lag(1) regress * confirmação de uma única raiz unitária dfuller infl, lag(0) regress ******************** Análise ARIMA para inflação twoway (line ipca Data, sort) (line infl Data , yaxis(2)), scheme(s2mono) * Análise posterior a 2004 para evitar pico de inflação de 2003. drop if data<2005.01 twoway (line ipca Data, sort) (line infl Data , yaxis(2)), scheme(s2mono) * Correlogramas em nivel e em diferenças corrgram ipca , yw corrgram infl , yw **** teste de Raiz Unitária - confirmar a presença de raiz unitária indicada **** pelos correlogramas * seleção de defasagens varsoc ipca, maxlag(13) varsoc infl, maxlag(13) * realização do teste dfuller ipca, lag(1) regress * confirmação de uma única raiz unitária dfuller infl, lag(0) regress * Amostra de estimação 2005-2014; Amostra de previsão 2015-2017 * Modelos selecionados anteriormente: infl~ARIMA(1,0,0) e infl~ARIMA(1,0,0) c/ Dummies sazonais * I. infl - ARIMA(1,0,0) arima infl if data<2015.01, arima(1,0,0) predict hdyn_infl_ar1,dynamic(tm(2015.1)) y predict h_infl_ar1,xb predict e_infl_ar1,r * II infl~ARIMA(1,0,0) c/ Dummies sazonais xi: arima infl i.mes if data<2015.01 , arima(1,0,0) predict hdyn_infl_ar1S,dynamic(tm(2015.1)) y predict h_infl_ar1S,xb predict e_infl_ar1S,r *gráfico previsão 1 passo à frente twoway (line infl Data if tin(2010m1, ) , sort) (line h_infl_ar1 Data if tin(2010m1, )) (line h_infl_ar1S Data if tin(2010m1, )), scheme (s2mono) * gráfico previsão dinâmica twoway (line infl Data if tin(2010m1, ) , sort) (line hdyn_infl_ar1 Data if tin(2009m1, )) (line hdyn_infl_ar1S Data if tin(2010m1, )), scheme (s2mono) * gráfico previsão estática (1 passo à frente) e dinâmica twoway (line infl Data if tin(2010m1, ) , sort) (line h_infl_ar1 Data if tin(2009m1, )) (line hdyn_infl_ar1 Data if tin(2010m1, )), scheme (s2mono) * gráfico previsão estática (1 passo à frente) e dinâmica twoway (line infl Data if tin(2010m1, ) , sort) (line h_infl_ar1S Data if tin(2009m1, )) (line hdyn_infl_ar1S Data if tin(2010m1, )), scheme (s2mono) * curiosidade twoway (line infl Data if tin(2010m1, ) , sort) (line f.h_infl_ar1 Data if tin(2010m1, )) , scheme(s2mono) *Comparando as previsões fora da amostra sum e_infl_ar1 if tin(2015m1, ) display "MSPE=" r(sd)^2 + r(mean)^2 display "RMSPE=" sqrt( r(sd)^2 + r(mean)^2) display "AIC=" log(r(sd)^2 + r(mean)^2)+2*1/r(N) display "SIC=" log(r(sd)^2 + r(mean)^2)+log(r(N))*1/r(N) sum e_infl_ar1S if tin(2015m1, ) display "MSPE=" r(sd)^2 + r(mean)^2 display "RMSPE=" sqrt( r(sd)^2 + r(mean)^2) display "AIC=" log(r(sd)^2 + r(mean)^2)+2*2/r(N) display "SIC=" log(r(sd)^2 + r(mean)^2)+log(r(N))*2/r(N) * Qual modelo selecionar? ******************************************************************************* ******************************************************************************* ******* Comentário: ******* Ilustrando o problema de previsão de séries não estacionárias arima ipca if data<2015.01, arima(1,1,0) predict hdyn_ipca_110,dynamic(tm(2015.1)) y predict hy_ipca_110,y predict e_ipca_110,r predict h_infl_110,xb *gráfico previsão 1 passo à frente e dinâmica twoway (line ipca Data if tin(2010m1, ) , sort) (line hy_ipca_110 Data if tin(2010m1, )) (line hdyn_ipca_110 Data if tin(2010m1, )), scheme (s2mono) * gráfico erro previsão 1 passo à frente gen erro1=ipca - hy_ipca_110 twoway (line erro1 Data if tin(2010m1, )) (line e_ipca Data if tin(2010m1, )) , scheme (s2mono) * equivalência erros de previsão inflação ou ipca twoway (line infl Data if tin(2010m1, ) , sort) (line h_infl_110 Data if tin(2010m1, )) , scheme (s2mono) gen erro_infl = infl - h_infl_110 twoway (line erro1 Data if tin(2010m1, ) , sort) (line erro_infl Data if tin(2010m1, )) (line e_ipca_110 Data if tin(2010m1, )) , scheme (s2mono)
Compartilhar