quarta-feira, 24 de dezembro de 2008

Estatística, matemática e economia

Gente, alguns colegas meus acham que deveria opinar sobre a prova do IPEA, posto que dizem que ela não teve um conteúdo mais de análise quantitativa.

Olha, eu não criei o meu blog para dar opiniões sobre correntes de pensamento econômico, pois não me julgo a melhor pessoa para fazer isto. Se quero criticar, seja positiva ou negativamente, teria de ter muito ciência e consciência sobre o tema. Eu criei este Blog para ajudar a divulgar as técnicas estatísticas principalmente na economia e finanças por meio dos programas R e EViews. Pessoas de outras áreas (engenharia, contabilidade, etc) já me mandaram e-mails sugerindo críticas e tirando dúvidas.

O que vou escrever agora é mais pessoal, ou seja, não é regra geral.

Porque estudei economia e estatística? Porque achava a economia tão rica em conteúdo, em teorias, que ficava fazendo aquela pergunta que tenho certeza que alguns estudantes até hoje se fazem: “Onde eu uso isto?” ou “Por qual motivo é assim?” ou “Há como provar isto?”. Foi na estatística que comecei a entender as equações, teoremas, etc. Para mim: A matemática é uma linguagem universal, a estatística é a análise empírica desta linguagem universal e a economia é a interpretação desta análise.

Números não mentem, a mentira vem de quem os interpreta ou da forma como foram obtidos tais números.


Adoro a estatística e à cada dia que estudo descubro que tenho muito a aprender!!! Os que dizem que sei bem econometria, análise multivariada, etc, enganam-se, pois a economia é feita de relações sociais, e estas sempre geram pontos discrepantes ou quebras estruturais nas minhas análises....


Volto a escrever: Não competi a mim emitir críticas. Apenas divulgo técnicas e espero poder ajudar muitas pessoas com este blog. Em janeiro colocarei outras macros seja em finanças, econometria...

Abraços a todos

terça-feira, 16 de dezembro de 2008

Obrigada

OI gente!

Obrigada a todos que se sensibilizaram comigo. Teve gente me mandando e-mails, ligando, nossa...o que são os amigos na vida? A melhor forma com a qual posso retribuir tal preocupação é fazendo o que acho que sei fazer: vou montar uma apostila em R e disponibilizarei alguns comandos no meu blog. Esta apostila será diferente....

Ah, e claro, vou responder ás perguntas que me enviam por e-mail mais rapidamente, podem acreditar.

Eu já tenho uma, 370 pgs, que é sobre o Eviews. As pessoas pensam que fico só mexendo no R, mas não, também uso muito o Eviews (entre outros programas incluindo os da estatística) e agora estou estudando o Ox.

Assim que esta fase pela qual passo acabar, eu começo a fazer.

Abraços^n

sexta-feira, 12 de dezembro de 2008

May It Be

May It Be/ Enya
Lord Of The Rings (O Senhor dos Anéis)

May it be an evening star
Shines down upon you
May it be when darkness falls
Your heart will be true
You walk a lonely road
Oh, how far you are from home
Mornië utulië (Darkness has come)
Believe and you will find your way
Mornië alantië (Darkness has fallen)
A promise lives within you now
May it be the shadows call
Will fly away
May it be your journey on
To light the day
When the night is overcome
You may rise to find the sun
Mornië utulië (Darkness has come)
Believe and you will find your way
Mornië alantië (Darkness has fallen)
A promise lives within you now
A promise lives within you now

quinta-feira, 20 de novembro de 2008

Limite de t tendendo a zero quando você tende ao infinito

Estes 2,5 meses têm sido muito difíceis para mim. Estou vencendo o meu próprio limite. Praticamente estou concentrando meu tempo inteiro a finalizar apenas uma única tarefa. Não vejo a hora de voltar a fazer as coisas das quais realmente gosto. Até dezembro volto a ser eu.
Mas de tudo isto que anda acontecendo tirei um único proveito: Ver que sem a família e amigos somos apenas sombras de nós mesmos.

Hoje tive um tempinho para voltar a dar minhas consultorias e acabei de identificar alguns pontos discrepantes que há meses não pude avaliá-los.

O limite do ser humano vai até aonde seu pensamento quer chegar....




quarta-feira, 5 de novembro de 2008

Não é fácil....

Hoje comecei a tentar ajustar a série Selic. Realmente não é fácil mesmo... A série é simplesmente lotada de outliers e pontos discrepantes os mais diversos. Se você utiliza o Ipca junto com o Crédito, daí você verifica mais outliers. Se você trabalha com variáveis de intervenção, o modelo não se ajusta bem, pois os resíduos não seguem a distribuição de probabilidade normal em nenhum teste convencional, sem contar a presença de heterocedasticidade. Se você retira os pontos, até que melhora, mas existe uma corrente de econometristas que não recomenda retirar pontos discrepantes.

Até agora só pude conseguir estas previsões. Vou mexer nisto em outro dia.




sábado, 1 de novembro de 2008

R x Excel.

Quem disse que o R não faz planilhas como o Excel??? Copie os comandos abaixo e brinque com eles. Coloquei algumas figuras só para ilustração. Poucas pessoas- no Brasil- conhecem o programa R, mas é questão de tempo para empresas e faculdades começarem a adotá-lo. Tal programa é gratuito e existem vários pacotes para áreas como finanças, estatística, matemática, etc. Sem contar as interfaces que ele tem com outros programs como o Ox, por exemplo.

O exemplo abaixo é de despesas de uma empresa XX.
























dados<-read.csv2(file.choose(),head=T)
dados<-dados[,1:12]
dados
summary(dados)
names(dados)
dim(dados)
names(dados)[2:ncol(dados)] <- format(strptime( names(dados)[2:ncol(dados) ], "%d/%m/%Y"), "%d %b %Y")
head(dados)
data<- seq(as.Date("2000-01-01"), length.out=11, by="1 month")
data
names(dados)[2:ncol(dados)]<- format(data, "%Y %b %d")
head(dados)
attach(dados)
names(dados)
soma<-apply(dados[,2:ncol(dados)],1,sum)
despesas_totais<-data.frame(ADMINISTRAÇÃO,soma)
despesas_totais
porcentagem<-prop.table(despesas_totais[,2])*100
gastos<-data.frame(ADMINISTRAÇÃO,porcentagem)
gastos
especificacao<-factor(ADMINISTRAÇÃO)
especificacao
d<-data.matrix(gastos[,2])
d

plot(d,type="p",col=2, main="Contas com maiores despesas")
identify(1:48,d,especificacao)
pie(d, labels=especificacao, shadow=FALSE, main="Setores- Despesas",col = rainbow(16))

soma.mes<-apply(dados[,2:ncol(dados)],2,sum)
despesas_totais_mes<-data.frame(data,soma.mes)
despesas_totais_mes
porcentagem_mes<-prop.table(despesas_totais_mes[,2])*100
porcentagem_mes ## despesas do mês de fevereiro

barplot(porcentagem_mes,beside=T,legend.text=data,
col = rainbow(5),ylim=c(0,50),main="Despesas totais")

filtro<-subset(dados,ADMINISTRAÇÃO=="SALÁRIOS")## Filtro por salários
filtro

Faça este natal ser diferente!

Que tal ir a uma agência dos Correios e pegar uma cartinha das crianças pobres e ser o Papai ou Mamãe Noel delas?
Existem pedidos inacreditáveis. Tem criança pedindo um panetone, uma blusa de frio para a avó...É uma idéia. É só pegar a carta e entregar o presente numa agência do correio até dia 20 de Dezembro. O próprio correio se encarrega de fazer a entrega.
Na vida, a gente passa por 3 fases:
- a primeira, quando acreditamos no Papai Noel;
- a segunda, quando deixamos de acreditar e
- a terceira, quando nos tornamos Papai Noel!!!

sexta-feira, 31 de outubro de 2008

Acabou!!!

31 de outubro de 2008.

Esta data é histórica para mim. Virei uma página negra, NEGRA, em minha vida.

Acabou!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!^!!

Livrei-me da humilhação e hipocrisia.

Aos meus amigos que me acompanharam durante estas 3 últimas semanas, fica aí esta data.


Vida nova, adeus à hipocrisia chamada Mer.....

sexta-feira, 24 de outubro de 2008

quinta-feira, 23 de outubro de 2008

Série Temporais: GARCH

E agora,= como ficariam as estimações dos parâmetros de processos com variância heterocedástica sob presença de quebra estrutural???









Mais uma vez Séries Temporais.

Perguntaram-me como fiz para gerar a quebra, já que graficamente não é possível vê-la bem. Colegas, respondi aos seus e-mails mostrando como. Uma quebra nitidamente visível é aquela em que você quebra o intercepto, pois assim a média do processo muda muito!!! No meu caso, fui menos extrema, quebrei o parâmetro do AR(1). Fiz passar de 0.8 para 0.1. Fiz isto porque em geral, os testes para detectarem quebras estruturais- CUSUM e ME- não detectam tão bem estes tipos de quebras, sobretudo se a magnitude da quebra for pequena.

Conclusão: Não só outliers como também quebras estruturais interferem no EQM, na proporção de vício e de variância das projeções.

Ah, Gustavo, vi seu recado no msn.
Bjs.

quarta-feira, 22 de outubro de 2008

Séries temporais....()!

Aí está um bom exemplo de ajuste de modelo AR(1) na ausência e presença de quebra estrutural.
Pergunta: Em qual destas modelagens a projeção ficaria melhor? Um ponto para quem adivinhar, hehe!!!






Natal 2008

Que tal ir a uma agência dos Correios e pegar uma cartinha das crianças pobres e ser o Papai ou Mamãe Noel delas? Existem pedidos inacreditáveis. Tem criança pedindo um panetone, uma blusa de frio para a avó...É uma idéia. É só pegar a carta e entregar o presente numa agência do correio até dia 20 de Dezembro. O próprio correio se encarrega de fazer a entrega.

Na vida, a gente passa por 3 fases:
- a primeira, quando acreditamos no Papai Noel;
- a segunda, quando deixamos de acreditar e
- a terceira, quando nos tornamos Papai Noel!!!

terça-feira, 21 de outubro de 2008

Não me esqueci do Eviews não!!!!

Pessoal, eu não me esqueci do EViews não, viu!!! Só para mostrar, olha só a previsão que tinha feito para a PMC - Pesquisa Mensal do Comércio brasileiro- e que agora terei de atualizar e avaliar cenários macroeconômicos. Ela foi feita no EViews.


Anjos em nossas vidas

Eu acredito em anjos, mas precisamente em pessoas que aparecem em nossas vidas não por quererem aproveitar de algo que temos: dinheiro, conhecimento, fama, etc., mas que estão presentes em nossas vidas para que possamos crescer, para enfrentar e superar fases difíceis. O professor Marcos é uma destas pessoas. Não gosto de citar nomes, prefiro o anonimato, mas ele é mais que um amigo muito especial.

Não tenho palavras que possam expressar a gratidão que tenho para com o senhor.

bjs

segunda-feira, 20 de outubro de 2008

Utilidade das técnicas multivariadas em 102 empresas


























Dani, a utilidade da análise estatística multivariada é de suma importância. Olha só para vc ver estes exemplo para 102 empresas que fiz há APROXIMADAMENTE 6 meses- não me lembro a data certa.

O primeiro gráfico, mostra a rentabilidade ao dia, mês ano, ibovespa ao dia, mês e ano para 102 empresas. O eixo y é o eixo das médias das empresas, a linha horizontal é a média global. Assim, empresas acima desta reta possuem altas rentabilidades.

O segundo gráfico representa a separação por clusters, são 4 ao todo. Observe como é possível formar grupos de empresas com rentabilidades globais (rentabilidade ao dia, mês e ano, ibovespa ao dia, mês e ano ) semellhantes.

Os dois últimos gráficos separam as rentabilidades (médias e medianas) em dois blocos: rentabilidade ao mês e ao ano e o outro que é rentabilidade ao dia, ibovespa ao dia, mês e ano.

Em relação ao último gráfico, quanto mais longe dos eixos zeros- sentido positivo, maiores as rentabilidades. Por exemplo, a Natura teve alta rentabilidade global, entende o que digo?

Bem, podia ficar fazendo "altas" análises, as mais variadas. Simplesmente adentar nestas rentabilidades, mas acho que já deu para vc entender, minha cara.

bjs^n

quinta-feira, 16 de outubro de 2008

Agora sim!!!!


### Agora sim, existe correlação.
set.seed(1133)
x<-rnorm(200)
y<-x^2
dados<-cbind(x,y)

chi.plot<-function(dados,ro){
n<-nrow(dados)
x<-dados[,1]
y<-dados[,2]
H<-c(rep(0,n))
F<-c(rep(0,n))
G<-c(rep(0,n))
S<-c(rep(0,n))
chi<-c(rep(0,n))
lambda<-c(rep(0,n))
for(i in 1:n){
k1<-0
k2<-0
k3<-0
for(j in 1:n){
if(j!=i){
k1<-ifelse((x[j]<=x[i] & y[j]<=y[i]),k1+1,k1)
k2<-ifelse((x[j]<=x[i]),k2+1,k2)
k3<-ifelse((y[j]<=y[i]),k3+1,k3)
}
}
H[i]<-k1/(n-1)
F[i]<-k2/(n-1)
G[i]<-k3/(n-1)
S[i]<-sign((F[i]-0.5)*(G[i]-0.5))
c<-c((F[i]-0.5)^2,(G[i]-0.5)^2)
lambda[i]<-4*S[i]*max(c)
chi[i]<-(H[i]-F[i]*G[i])/sqrt(F[i]*(1-F[i])*G[i]*(1-G[i]))
}
nf <- layout(cbind(c(0,1,1,0), c(0,2,2,0)))
plot(x,y,pch=19,main='Scatterplot')
plot(lambda,chi,pch=19,xlim=c(-1,1),ylim=c(-1,1),
main='Chi-plot, p=0.95',sub=paste('ro=',ro),xlab=expression(lambda),
ylab=expression(chi),las=2)
abline(h=0,lty=2)
abline(v=0,lty=2)
abline(h=-1.78/sqrt(n),lty=2)
abline(h=1.78/sqrt(n),lty=2)
}

chi.plot(dados,0.91)

Será o coeficiente de correlação o melhor? Será que uma associação entre variáveis é sempre linear?

set.seed(1133)
#### CASO 1
x<-rnorm(200)
y<-x
plot(x,y,type="p")

### Possibilidade 1
cor(x,y)

### Possibilidade 2
cor.test(x, y, method = "kendall", alternative = "two.sided")
cor.test(x, y, method = "spearman", alternative = "two.sided")

### CASO 2

y2<-2*x
plot(x,y2,type="p")
cor(x,y2)
cor.test(x, y2, method = "kendall", alternative = "two.sided")
cor.test(x, y2, method = "spearman", alternative = "two.sided")


#### CASO 3

y3<-x^2

plot(x,y3,type="p")

### Possibilidade 1
cor(x,y3)

### Possibilidade 2
cor.test(x, y3, method = "kendall", alternative = "two.sided")
cor.test(x, y3, method = "spearman", alternative = "two.sided")

### CASO 4

y4<-2*x^2
plot(x,y4,type="p")
cor(x,y4)
cor.test(x, y4, method = "kendall", alternative = "two.sided")
cor.test(x, y4, method = "spearman", alternative = "two.sided")

## CASO 5

y5<-x^2+ x^4+rnorm(200,2,1)
plot(x,y5,type="p")
cor(x,y5)
cor.test(x, y5, method = "kendall", alternative = "two.sided")
cor.test(x, y5, method = "spearman", alternative = "two.sided")

### Gerando outliers
xx<-c(x,rnorm(3))
y6<-c(y5,rnorm(3,100,10))
plot(xx,y6,type="p")

cor(xx,y6)
cor.test(xx, y6, method = "kendall", alternative = "two.sided")
cor.test(xx, y6, method = "spearman", alternative = "two.sided")



### Brincando um pouco...

plot(ibov,csn)
cor(csn,ibov)
cor.test(csn, ibov, method = "kendall", alternative = "two.sided")
cor.test(csn, ibov, method = "spearman", alternative = "two.sided"
)

### vale apena dizer, que este é apenas um exemplo,
## até pode ser dado em sala, mas é um caso específico
## Bem, agora estou estudando algo que, até então, só tinha ouvido falar: Cópulas.

quarta-feira, 15 de outubro de 2008

Intervalo de confiança para risco da Petrobras no período de 20/05/2008 a 10/10/2008

### Número de simulações: 1000, nível de significância adotado: 5%. ####Metodologia: Bootstrap.




Será que consigo????

Há 2 anos me pediram para montar uma economia virtual usando macros do EViews- já que ele é um dos programas mais usados nos cursos de graduação em economia-estilo modelo IS, LM , BP. Eu disse que era muito trabalhoso, pois seriam muitas variáveis e teria de analisar vários possíveis casos de políticas e seus efeitos conjuntamente. Nossa, seriam muitos comandos!!!! Seria muito mais fácil montar em outro programa, como o R. Além disto, montaria tudo isto e daí??


Mas não é que estou conseguindo... quando eu decido algo, é difícil tirar da cabeça!!!


Em breve: Economia virtual

segunda-feira, 13 de outubro de 2008

Simulando projeção e interpolação para DI- mercado futuro-finmetrics


Injustiças

Acabo de receber uma notícia nada nada agradável, Fabiana. Por isto que eu te digo, é injustiça em cima de injustiça. É só apadrinhamento, por isto que este país só evolui em círculos ascendentes. Devemos sim dar louvores aos puros liberais. Devemos estudar mais suas teorias para não ficarmos por aí dando nome de política liberal ao que é pura política social-democrata e cheia de restos ditatoriais.

Var de uma carteira-Utilizando outro programa e comandos








O preço da escolha

Na vida é assim: Ou vc vende sua imagem e passa a se julgar superior e de maior intelecto que os outros e constrói seu próprio pedestal ou vc admite que todo conhecimento é pouco e ninguém é dono da verdade.

O pior é quando lhe dizem na cara que vc está acima da média ( não a aparada) e não lhe dão espaço para não perderem os seus próprios espaços, espaços estes de imagens e superioridades que não chegam a passar de 1 cm de seus próprios olhos.

Depois dizem que clusters só existem na estatística.... Não! Estão nas relações humanas, nas empresas ( onde as baleias apadrinham as traíras), em grande parte das instituições.

Prefiro a realidade dos fatos aos fatos realizados. Prefiro amar o que faço e assumir minha imagem como alguém que não é dona da verdade e sim um simples ser a procura do saber.

quinta-feira, 9 de outubro de 2008

Criando tendências

## Pediram-me para montar tendências em uma série. Aí vai
mpl 2002:01 2008:03
series t=@trend(2001:12)
smpl 2002:01 2003:01
series tend=0
tend.fill(o=2002:1,l) 100,100,100,100,100,100,100,100,100,100,100,100
smpl 2003:02 2008:03
series tend=.5*x+90
smpl @all
group g t pmc tend
graph gg.xyline g
show gg

sexta-feira, 3 de outubro de 2008

Igualmente interessante!!!

Pessoal, Vejam e bjs a todos

http://raciocioniosespurios.blogspot.com/

Retorno médio usando procedimentos da Securities Market Lime (SML)

## vendo efeito período#########

#### 1) Período estacionário do Ibovespa

premio<-mean(ibov[1:127]-rf)
beta1<-cov(ibov[1:127],petr[1:127])/var(ibov[1:127])
r.esper.petr<-rf+beta1*premio
r.esper.petr
beta2<-cov(ibov[1:127],vale[1:127])/var(ibov[1:127])
r.esper.vale<-rf+beta2*premio
r.esper.vale

##### 2) Período crescente do ibovespa, pós 14/04/2008 a
20/05/2008

premio<-mean(ibov[128:152]-rf)
beta1<-cov(ibov[128:152],petr[128:152])/var(ibov[128:152])
r.esper.petr<-rf+beta1*premio
r.esper.petr
beta2<-cov(ibov[128:152],vale[128:152])/var(ibov[128:152])
r.esper.vale<-rf+beta2*premio
r.esper.vale

##### 3) Período decrescente do ibovespa, pós
##20/05/2008

premio<-mean(ibov[153:245]-rf)
beta1<-cov(ibov[153:245],petr[153:245])/var(ibov[153:245])
r.esper.petr<-rf+beta1*premio
r.esper.petr
beta2<-cov(ibov[153:245],vale[153:245])/var(ibov[153:245])
r.esper.vale<-rf+beta2*premio
r.esper.vale

Mais estatísticas

http://www.worldometers.info/pt/

quinta-feira, 2 de outubro de 2008

Coeficiente Beta e gráfico da Petrobras e Vale condicionado ao Ibovespa

### A relação entre Vale (e Petrobras) e Ibovespa em períodos antes e depois crise. Veja que loucura Dani!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
b1<-cov(ibov,petr)/var(ibov)
b1 [1] 0.6258915
b2<-cov(ibov,vale)/var(ibov)
b2 [1] 0.5187367
cor(petr,vale)
coplot(petr~vale ibov)
## vendo efeito período ####
1) Período estacionário do Ibovespa
b1<-cov(ibov[1:127],petr[1:127])/var(ibov[1:127])
b2<-cov(ibov[1:127],vale[1:127])/var(ibov[1:127])
b1
[1] -0.2014692
b2
[1] -0.3504139
cor(petr[1:127],vale[1:127])
coplot(petr[1:127]~vale[1:127] ibov[1:127])
##### 2) Período crescente do ibovespa, pós 14/04/2008 a 20/05/2008
b1<-cov(ibov[128:152],petr[128:152])/var(ibov[128:152])
b2<-cov(ibov[128:152],vale[128:152])/var(ibov[128:152])
b1
[1] 3.101659
b2
[1] 0.01888223
cor(petr[128:152],vale[128:152])
coplot(petr[128:152]~vale[128:152]ibov[128:152])
##### 3) Período decrescente do ibovespa, pós ##20/05/2008
b1<-cov(ibov[153:245],petr[153:245])/var(ibov[153:245])
b2<-cov(ibov[153:245],vale[153:245])/var(ibov[153:245])
b1
[1] 1.062324
b2
[1] 1.219344
cor(petr[153:245],vale[153:245])
coplot(petr[153:245]~vale[153:245] ibov[153:245])
###### Vendo em partes
ib<-rep(0,245)
ib[128:152]<-1
ib[153:245]<-2
ib
coplot(vale~petr ib)
libary(lattice)
xyplot(vale~petr ib)

Análise de Intervenção

### Um dos procedimentos. Verificação de outliers usando distâncias de cooks.
set.seed(125)
ar<-lm(y[2:n]~y[1:(n-1)])
summary(ar)
cooks <- cooks.distance(ar)
plot(cooks,ylab="Cooks distances")
obs<-1:(n-1)
identify(1:(n-1),cooks,obs)
dummy<-rep(0,(n-1))
dummy[79]<-1
dummy
ar<-lm(y[2:n]~y[1:(n-1)]+dummy)
summary(ar)
### ou, de forma um pouco parecida
dummy2<-rep(0,n)
dummy2[80]<-1
dummy2
ar<-arima(y, order = c(1, 0, 0),xreg=dummy2)
ar

Duration

########### Valor presente (pv e pp) e Duration #### Exercíco introdutório m<-1000 n<-20
c<-rep(m/n,n)
c
t<-1:n
r<-c(0.05,0.04,0.045,.049,0.0499,0.0501,0.051,0.055, 0.06)
pv<-function(c,r,M)sum(c/((1+r)^t))+M/(1+r)^n pp<-sapply (r,function(j) pv(c,j,m))
pp
dp<-sapply(1:length(r),function(k)(pp[k]-pp[1])/pp[1])
dp*100
dp*100 [1] 0.0000000 13.5903263 6.5039682 1.2568559 [5] 0.1247278 -0.1245165 -1.2357217 -5.9751912 [9] -11.4699212 duration <- function(c, r, M,p) { n <- length(c) ( sum((c*t)/((1+r)^t)) + M*n/((1+r)^n))/p } duration(c, .05, m,pv(c,0.05,m))
durations<-sapply(r, function(rr) duration(c, rr, m,pv(c,rr,m)))
durations [1] 13.08532 13.54472 13.31615 13.13165 13.08996 13.08068 [7] 13.03892 12.85262 12.61844 dr<-sapply(1:length(r),function(h)(r[h]-r[1])) dr*100
aprox<-function(dur,taxa,d)((-1*dur)/(1+taxa))*d
aproximacao<-aprox(durations[1],r[1],dr[2:length(dr)]) aproximacao plot(r[2:length(r)],aproximacao,type="l",col=3, xlab="taxa de juros", ylab="preço")
lines(dp[2:length(r)],lty=3)
########### Gráfico em 3d########
taxa <- seq(0.04, 0.06, length= 80)
preco <- seq(800, 1135, length= 80)
fun <- function(taxa,preco) { d<-(sum((50*(1:n))/((1+taxa)^(1:n))) + 1000*n/((1+taxa)^n))/preco }
duration.3d <- outer(taxa, preco, fun)
op <- par(bg = "white") persp(taxa, preco, duration.3d, theta = 80, phi = 30, expand = 0.5, col = "lightblue")










quarta-feira, 1 de outubro de 2008

Fórum do CONRE-3.

Por que escolher o bacharelado em Estatística?
Que tal ser um profissional super versátil, que possa trabalhar em qualquer área e se dar sempre muito bem? E que tal trabalhar com equipes diferentes, poder interagir com vários profissionais e ainda exercer uma função importante? E, melhor ainda, não ter muito concorrente?
Gostou, não é? Pois este profissional existe e pode ser um Estatístico!
O Estatístico é aquele que se forma Bacharel em Estatística. No Brasil há 29 universidades e/ou escolas que oferecem cursos de Bacharelado em Estatística.
Mas, para que serve a Estatística, afinal de contas?
Imagine um médico e um farmacêutico querendo saber se um remédio em desenvolvimento é bom ou ruim. Para testar o remédio, é preciso PLANEJAR muito bem o experimento, COLETAR corretamente os dados, ANALISAR com muito cuidado e DIVULGAR seus resultados de forma honesta e com confiança no que está dizendo. Imagine o perigo de uma pesquisa mal feita num assunto tão importante! Bom, para não colocar a vida de ninguém em risco, é preciso tomar muitos cuidados. Antes de mais nada, é preciso planejar cada etapa abaixo:
O remédio será testado em quem?– Homens? Mulheres? Idosos? Crianças? Obesos? Jovens? Quem?
Quantas pessoas serão necessárias para testar?– Basta testar em uma ou duas pessoas? Ou será melhor testar em 10 pessoas? 30? 500? 2.000? Como saber?– Há dinheiro para testar em tanta gente?
E se houver dois grupos de pessoas?– Para um grupo de voluntários dá-se o remédio a ser testado; para o outro grupo, dá-se um remédio “de mentirinha”, chamado placebo, mas não se conta a verdade para ninguém. Será que há diferença nos resultados de um grupo para outro?
– Mas o remédio foi testado só com um grupo de pessoas, em geral voluntários, como é que depois pode-se afirmar que este remédio vai ser bom para todo mundo? É certeza absoluta?
O Estatístico é exatamente o profissional que auxiliará tanto o médico como o farmacêutico em cada uma destas etapas: desde o tipo de voluntário, quantidade e controle das pessoas que farão parte do experimento (amostragem), na coleta cuidadosa e minuciosa dos dados (campo), na organização destes dados no computador (banco de dados e tabulação), na hora de fazer todas as comparações interessantes, interpretar os resultados (testes estatísticos) e divulgá-los para todos os envolvidos (análises estatísticas). Como os testes são feitos somente num grupo de pessoas, existe uma pequena chance de haver um erro, não é mesmo? O Estatístico saberá dizer que tipo de erro poderá ocorrer e com que grau de certeza o resultado será divulgado.
A Estatística é um conjunto de técnicas e métodos que vai ajudar o Estatístico em todas as etapas acima: na amostragem, na organização dos dados, na geração de tabelas e análises comparativas, na interpretação dos resultados, de forma que todas as afirmações possam ser feitas dentro de um limite de segurança estabelecido.
Mas a Estatística não é usada só para ver se o remédio é bom ou não. Se você pensar bem, muita coisa do nosso dia-a-dia acontece em conseqüência de estudos que levam em conta análises estatísticas. Vejam alguns exemplos:
· Você abre o jornal e lê a manchete: “Cruzamentos: perigo à vista”. A matéria mostra um gráfico sobre criminalidade na cidade e traz evidências de que num certo cruzamento houve muito mais assaltos do que noutros. Quantas pessoas evitarão este cruzamento ou passaraõ a ter atenção redobrada nestes locais?
· Um estudo científico mostra que mulheres fumantes têm probabilidade maior de desenvolver câncer do pulmão do que homens fumantes. Quantas mulheres não pararam de fumar diante desta notícia?
· A CET faz um estudo sobre o trânsito na cidade de São Paulo e decide se o rodízio será necessário ou não com base nas estatísticas sobre a quantidade e tipos de veículos diariamente nas ruas, locais mais congestionados, horários de pico, etc.
· A prefeitura da cidade reformula o sistema de transporte público com base nos relatórios estatísticos contendo informações detalhadas sobre fluxo de passageiros, linhas mais requisitadas, tempo de ociosidade, demanda vs. oferta, etc.
· O governo divulga dados estatísticos que influenciam todos os índices financeiros que usamos no dia-a-dia: comércio, indústria, transporte, clientes, etc… que vão influenciar nas contas que vamos pagar (prestações, crediário, luz, água, telefone, gás, etc.)
UNIVERSIDADES / FACULDADES DO BRASIL COM CURSOS DE ESTATÍSTICAFonte: MEC-INEP / 2006

Estatísticas

http://www.poodwaddle.com/earthclock.swf

terça-feira, 30 de setembro de 2008

Análise de cluster da rentabilidade empresas do Ibovespa

####Segue abaixo apenas um dos métodos que foi elaborado para separação das empresas em #####clusters

a<-agnes(dados, metric = "euclidean",stand = FALSE, method = "ward")
a
plot(a)
fo<-cutree(hclust(dist(dados,method="euclidean"),method="ward"),h=80)
plot(hclust(dist(dados),method="ward"))
abline(h=80)
country<-names(dados)
c<-lapply(1:5,function(nc) country[fo==nc])
ccmedia<-lapply(1:5,function(nc)
apply(dados[,fo==nc],2,mean))
cmedia


########bjs############

segunda-feira, 29 de setembro de 2008

Blog interessante

Olá, pessoal. Como alguns sabem, criei este blog há pouco tempo ( há 5 dias). Bem, procurando artigos de economia cuja autoria fosse de professores que já me deram aula de economia, cheguei ao blog abaixo que achei muito interessante. Lá vcs vão ver de tudo: discussões políticas, econômicas, artigos, indicação de outros blogs interessantes, críticas as mais diversas, referências a livros, etc, etc, etc.
O endereço do blog é
http://gustibusgustibus.wordpress.com/

bjs

Identificação, Estimação e Adequação de Modelos

http://leg.ufpr.br/~ehlers/CE017/praticas/node9.html

Livro

Analysis of Integrated and Cointegrated Time Series with R

sexta-feira, 26 de setembro de 2008

Analisando a rentabilidade das empresas do IBOVESPA

##vamos analisar a rentabilidade diária com os retornos do ibovespa
plot(rent.dia, ibov.dia, pch=20, cex=1.2, xlab="rent.dia", ylab="ibov ao dia", main="rentabilidade das empresas", col=c("slateblue", "firebrick", "darkolivegreen")[as.numeric(res)] )
abline(v=mean(rent.dia), lty=2, col="red")
abline(h=mean(ibov.dia), lty=2, col="red")
abline(v=median(rent.dia), lty=2, col="blue")
abline(h=median(ibov.dia), lty=2, col="blue")
legend(19, -1,c("roxo=baixa", "violeta=média", "verde=alta"))
title(sub="rentabilidade: média= vermelha e mediana=azul")

## hehe

quinta-feira, 25 de setembro de 2008

Matriz hat para estimar valores futuros

eq<-lm(y~x1+x2)
x<-model.matrix(eq)
h<-hat(x)
h # que é seu h00, pelo que entendi#
#Bem, usando o que vc falou: h00 = x0'((X'X)^-1)x0 (X'X)^-1 é o mesmo anterior ....
# x0 é o vetor x para o qual eu quero gerar a previsão
# de um novo y, este vetor não foi utilizado pra estimar
# o modelo.
# então suponha que xo=[1,2,2]
x0<-matrix(c(1,2,2),3,1)
x0
# então
h00<-t(x0)%*%solve(crossprod(x))%*%x0
h00

bjim, meu caro

Dúvidas de um colega

eq<-lm(y~x1+x2)
names(eq)
ajuste<-eq$fitted.values
x<-model.matrix(eq)
h<-hat(x)
h # que é seu h00, pelo que entendi
h[1]h[1:length(h)]
eq$coefficients
eq$coefficients[1]# seu bo
eq$coefficients[1:length(eq$coefficients)]
Olha, mas lembre que em projeções, quando se tem variáveis exógenas, não se consegue projetar além da mostra,mas se vc tem variáveis endógenas Y(-1) y(-2) se consegue. Isto é parecido com um sistema de variáveis endógenas do tipoVAR.

quarta-feira, 24 de setembro de 2008

AUTO-IDENTIFICAÇÃO DE MODELOS

Claro, vc consegue identificar o melhor modelo. O Próprio programa identifica para vc. Este é um exemplo de alisamento exponencial e ARIMA para a série de comércio no Brasil.
fD1 <- ets(COM)
fD2 <- auto.arima(COM)
fD1.out <- ets(pmc,model=fD1)
fD2.out <- Arima(pmc,model=fD2)

## ok!!!

terça-feira, 23 de setembro de 2008

Média da carteira de ativos

Não sô, vc tem de montar deste jeito.
w<-c(unlist(carteira)/sum(unlist(carteira)))
wm<-as.matrix(dados)
co<-cov(m)
peso<-matrix(w,3,1)
risco<-sqrt(t(peso)%*%co%*%peso)
risco
retcarteira<-t(peso)%*%mean(dados)
retcarteira

# entendeu Fábio? Pôxa....

# bjs

Distribuição de probabilidade dos retornos da usiminas

Marcos, vc tem de fazer assim para obter a distribuição de probabilidade dos retornos da Usiminas neste período da amostra, usando o R:

dad<-read.table("usiminas.txt",head=T)
summary(dad)
y<-dad$ret
m<-matrix(sample(y,1000*1000,r=T),1000,1000)
medias<-colMeans(m)
x<-sort(medias)
par(mfrow=c(1,2))
d<-density(medias)
hist(medias,prob=T)
lines(d)
plot(function(x) dnorm(x, mean(medias), sd(medias)), min(medias), max(medias), ylab = "dens")

bjs

segunda-feira, 22 de setembro de 2008

Comandos Básicos em EViews

‘ ######## Montando uma regressão#######

‘vamos criar um workfile com o nome de coeficientes'
workfile coeficientes u 1 20

'vamos criar as séries x1 , x2 e y onde nrnd é a normal(0,1) e o restante você já sabe'
series x1= 15+@nrnd
series x2=10+10*@nrnd
series u=nrnd
series y=3*(x1^2)+2*x2+5+u

'vamos criar um vetor para estimar o intercepto
series betazero=1

'vamos guardar as variáveis e a série que só tem 1 no grupo denominado g'
group g betazero x1 x2

'vamos converter o grupo g em matriz chamada xx
matrix xx=@convert(g)

'vamos calcular os coeficientes
vector betas=@inverse((@transpose(xx)*xx))*@transpose(xx)*y

'vamos mostrar os coeficientes
show betas

'vamos criar a equação e comparar os coeficientes
equation eq01.ls y c x1 x2

'vamos mostrar os coeficientes
show c

Comandos Básicos em R

### Medidas de avaliação de ajuste na amostra
y=ipc # coloque a série real
previsao<-eq$fitted.values ## coloque a série ajustada
diferenca2=(y-previsao)^2
diferenca=y-previsao
y2=y^2
n<-length(y)
previsao2=previsao^2
diferenca_perc= diferenca/y
rmse=sqrt(sum(diferenca2)/n)
mae=sum(abs(diferenca))/n
mape=(sum(abs(diferenca_perc))/ n)*100
tic=sqrt(sum(diferenca2)/n)/(sqrt(sum(y2)/n)+sqrt(sum(previsao2)/n))
media_prev=mean(previsao)
mediay=mean(y)
bp=((media_prev-mediay)^2)/(sum(diferenca2)/n)
desvio_prev=sd(previsao)
desvioy=sd(y)
vp=(desvio_prev-desvioy)^2/(sum(diferenca2)/n)
cp=1-(bp+vp)
resultado<-list("raiz do erro quadrático médio"=rmse, "erro absoluto médio"=mae,
"erro percentual absoluto médio"=mape,"coeficiente de desigualdade de Theil"=tic,
"proporção de vício"=bp,"proporção de variância"=vp,"proporção de covariância"=cp)
resultado