Uncategorized

Melhor que Porta dos Fundos

Principalmente depois do plágio pelo qual não se desculparam (sem falar no argumento absurdo do Porchat em artigo para o Estadão). Aí não tem como rir mais. Não para mim.

Felizmente, existe diversão até na hora de estudar Economia como já mostrei hoje, mais cedo, com o segundo episódio deste divertido portal, EconPop. Com vocês, agora, o primeiro episódio.

Anúncios
Uncategorized

Outro gráfico do rCharts…

tsay_help

 

Desta vez, com a ajuda do próprio criador do pacote rCharts, consegui um gráfico com dados do recém-adquirido livro do prof. Tsay que comprei nesta manhã de domingo. A base de dados é esta:

Monthly simple returns of the stocks of International Business Machines (IBM) and Coca Cola (KO) and the S&P Composite index (SP). The sample period is from January 1961 to December 2011. The original data were from the Center for Research in Security Prices (CRSP) of the University of Chicago. The files has four columns. They are dates, IBM, SP, and KO.

Como eu sou um péssimo programador, não conseguia acertar o eixo das datas. Agora, com a dica do prof. Vaidyanathan, tentarei gerar outros gráficos interativos como este, inclusive para o Nepom.

Quando você clicar na imagem, será redirecionado para o site no qual se encontra o gráfico e poderá se divertir com a pequena, mas interessante, interatividade com os dados. Muito bom este rCharts…muito bom.

Uncategorized

Momento R do Dia – 2 – O IPCA

Como o Thomaz resolveu brincar com o IPCA ontem, resolvi poupar nosso tempo e mostrar ao leitor como as coisas não são simples. Então, usando o que aprendemos no texto anterior, eis a EACF do IPCA, mesmo período amostral utilizado por ele.

AR/MA
0 1 2 3 4 5 6 7 8 9 10 11 12 13
0 x x x x o o o o o o o x o o
1 o x o x o o o o o o o x o o
2 x x o x o o o o o o o x o o
3 x x o x o o o o o o o o o o
4 x x x x o o o o o o o o o o
5 x x x x o o o o o o o o o o
6 x o x x o o x o o o o x o o
7 x x x x o x x o o o o o o o

Difícil, né? Achar um padrão triangular ali não é difícil, mas sugere um p=0 e um q = 5. Quando nos deparamos com o critério BIC, para um range de p = q = 14, temos…

 

ipcabic

Pois é. Mas o Thomaz já tem uma previsão para o IPCA e, sabiamente, não divulgou o modelo dele (trabalhou para caramba e a galera da 112 tem que passar pelo mesmo processo para aprender, não é, Thomaz?), mas eu diria que ele provavelmente vai pirar ao ler isto. O exercício é, sim, trabalhoso mas também recompensador.

Uncategorized

Momento R do Dia – A Função de Autocorrelação Estendida (EACF) e os modelos ARIMA

O pessoal que usa modelos ARIMA gosta de olhar para os correlogramas. Entretanto, alguns autores propuseram uma ferramenta alternativa que é a função de autocorrelação estendida (EACF). A proposta está no artigo em Tsay & Tiao (1984) (cuja referência completa você encontra pesquisando a página do prof. Tsay) e, em português, aparece citada na segunda edição de Morettin & Toloi pela sempre ótima editora Blücher. Em poucas palavras:

The EACF method uses the fact that if the AR part of a mixed ARMA model is known, ‘filtering out’ the autoregression from the observed time series results in a pure MA process that enjoys the cutoff property in its ACF. (Cryer, J.D. & Chan, K-S. Time Series Analysis with applications in R, Springer, 2010, 2nd edition, p.116)

Mas, o quanto esta função nos ajuda a identificar o processos ARMA? O que Tsay e Tiao fazem é propor um método tabular de visualização (os detalhes podem ser encontrados nos textos citados). Vou aproveitar que o pacote TSA do R tem o comando eacf() e fazer alguns exemplos básicos. Para cada processo simulado (n = 500) vou colocar o EACF correspondente, ok?

Primeiramente, os casos simples: AR(1) e MA(1). Para estes, a EACF parece ter o padrão óbvio. Visualmente, você analisa o padrão triangular de “zeros”. No caso do AR(1), ele começa em AR(1) e MA(0). No caso do MA(1), é exatamente o oposto. o padrão triangular começa em AR(0) e MA(1).

eacf_arma1

 

As coisas não ficam muito mais fáceis com um ARMA(1,1).

eacf_arma2

Qual a diferença do caso A para o caso B? Apenas os parâmetros usados na simulação. Para o primeiro, temos um phi = 0.8 e um theta = 0.3. No segundo, fiz phi = theta = 0.8.

No caso dos dois ARMA(2,2) que simulei, a EACF já ajudou um pouco mais, mas não vou reproduzir os resultados aqui.

Outra ferramenta útil para se decidir sobre números de defasagens são os critérios de seleção AIC ou BIC embora a literatura indique o uso destes apenas em modelos autoregressivos puros. O problema é que nem sempre sabemos que modelos temos à nossa frente. Assim, usando o mesmo AR(1) simulado acima, fiz uma busca pelo melhor modelo usando o critério BIC para um range de p= 0 a 6 e q= 0 a 6.

bic_range

As cores mais escuras indicam que o melhor modelo seria um AR(1) com intercepto.

As dicas de R

Forneço algumas dicas para vocês então.

library("astsa")
library("forecast")
library("TSA")
# AR
set.seed(123456)
y <- arima.sim(n = 500, list(ar = 0.6), innov=rnorm(500))
op <- par(no.readonly=TRUE)
layout(matrix(c(1, 1, 2, 3), 2, 2, byrow=TRUE))
plot.ts(y, ylab='')
Acf(y, main='Autocorrelations', ylab='',
    ylim=c(-1, 1), ci.col = "black")
Pacf(y, main='Partial Autocorrelations', ylab='',
     ylim=c(-1, 1), ci.col = "black")
par(op)

# usando o comando eacf de TSA
eacf(y)
# usando o comando armasubsets de TSA, com
# range de p = q = 6
res=armasubsets(y=y, nar=6, nma=6, y.name='test',ar.method='ols')
plot(res)

# agora um ARMA(1,1)
m <- arima.sim(model=list(ar=c(.8),ma=c(.3)), n = 500)
op <- par(no.readonly=TRUE)
layout(matrix(c(1, 1, 2, 3), 2, 2, byrow=TRUE))
plot.ts(m, ylab='')
Acf(m, main='Autocorrelations', ylab='',
    ylim=c(-1, 1), ci.col = "black")
Pacf(m, main='Partial Autocorrelations', ylab='',
     ylim=c(-1, 1), ci.col = "black")
par(op)
eacf(m)

# e um ARMA(2,2)
m2 <- arima.sim(model=list(ar=c(-.1,-.8),ma=c(-.7,.1)), n = 500)
op <- par(no.readonly=TRUE)
layout(matrix(c(1, 1, 2, 3), 2, 2, byrow=TRUE))
plot.ts(m2, ylab='')
Acf(m2, main='Autocorrelations', ylab='',
    ylim=c(-1, 1), ci.col = "black")
Pacf(m2, main='Partial Autocorrelations', ylab='',
     ylim=c(-1, 1), ci.col = "black")
par(op)
# a partir daqui, EACF e o criterio BIC
eacf(m2)
res=armasubsets(y=m2, nar=6, nma=6, y.name='test',ar.method='ols')
plot(res)

Espero que tenha se divertido. Ah sim, não duvido que o leitor mais esperto vá pegar sua série de dados para tentar alguma coisa. Um IPCA ou uma PIM-PF ou alguma taxa de câmbio, sei lá. Só sei que é fácil replicar os comandos. Afinal, você viu primeiro aqui. ^_^

Uncategorized

A pesquisa do IPEA, de fato, e o que os repórteres andam divulgando…

Excelente video do Sachsida explicando o porquê de a pesquisa do IPEA não ser suficiente para se dizer o que se está dizendo por aí sobre a sociedade brasileira.

A mulher pode andar mulambenta, como uma dançarina de cabaré ou como freira e ninguém pode praticar violência contra ela por conta das roupas. Entretanto, a pesquisa do IPEA não mostra que a sociedade brasileira pensa de forma diferente.

Antes de fazer seu protesto, entenda a metodologia da pesquisa.

O que eu sempre digo aqui?

Digo sempre que as pessoas precisam investir parte de seu tempo para aprender o básico de Estatística antes de saírem por aí fazendo marchas contra isto ou aquilo.

Concordo que o IPEA poderia ter sido mais enfático nas limitações da pesquisa. Também concordo que o tempo é escasso e que, portanto, jornalistas poderiam ter feito um trabalho menos superficial – já que recebem para isto – no trato da pesquisa.

Então, não, a pesquisa do IPEA não ajudou em nada para diminuir a violência contra as mulheres. Não adianta dizer que “já ajudou porque fez barulho”. É a velha mania do brasileiro de desprezar as estatísticas (é a mesma galera que diz que “economistas são frios como dados estatísticos” e que o que importa é “o amor, o calor humano”, como se a estatística fosse algo desprezível). Estamos perdendo tempo e dinheiro com discussões que não fazem sentido.

Então?

Então, primeiro, para combater a violência, precisamos entender um pouco de Estatística (com “E” maiúsculo). Não basta querer transformar o mundo se você não o entende. Pode piorar, inclusive, se você o entende de forma incorreta.

Portanto, leitores e leitoras, antes de se deixar levar pelo discurso, analise-o.

Uncategorized

1964: o ano em que todos, sem exceção, flertaram com ditaduras

Excelente artigo do historiador Marco A. Villa sobre 1964:

Com o desgaste dos modelos soviético, chinês e albanês, Cuba passou a ocupar o lugar. Teve papel central neste processo o livro A Ilha, do jornalista Fernando Morais, que visitou o país em 1977. Quando perguntado sobre os presos políticos, o ditador Fidel Castro respondeu que “deve haver uns 2 mil ou 3 mil”. Tudo isso foi dito naturalmente – e aceito pelo entrevistador.

 

Um dos piores momentos do livro é quando Morais perguntou para um jornalista se em Cuba existia liberdade de imprensa. A resposta foi uma gargalhada: “Claro que não. Liberdade de imprensa é apenas um eufemismo burguês”. Outro jornalista completou: “Liberdade de imprensa para atacar um governo voltado para o proletariado? Isso nós não temos. E nos orgulhamos muito de não ter”. O silêncio de Morais, para o leitor, é sinal de concordância. O pior é que vivíamos sob o tacão da censura.

 

É, pessoal, corações sujos por todos os lados, não é? Como nos ensina a boa História, não existem santos e demônios, apenas seres humanos. O problema é que alguns acham que sabem melhor do que os outros como os mesmos deveriam tocar sua vida. Dê-lhes poder e a complacência com a tortura e a violência brotará como chuchu em terras tropicais!