Vous êtes sur la page 1sur 12

UNIVERSIDADE FEDERAL DE GOIS

Instituto de Matemtica e Estatstica


Graduao em Estatstica

AJUSTE DE SRIES TEMPORAIS EM AES DA PETROBRAS

JACKSON MAIKE VEIGA DE ASSIS

Anlise de Sries Temporais

Goinia
2017
Jackson Maike Veiga de Assis

Ajuste de sries temporais em aes da Petrobras

Trabalho apresentado pelo aluno Jackson


Maike Veiga de Assis ao professor Lus Ro-
drigo, como parte para aprovao na disci-
plina de anlise de sries temporais.

Goinia
2017
Sumrio

1 Resumo 2

2 Introduo 2
2.1 Objetivo geral . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2
2.2 Objetivos especcos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2

3 Metodologia 3
3.1 Anlise Descritiva . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3
3.2 Pr-ajuste do Modelo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4
3.2.1 Sazonalidade Determinstica . . . . . . . . . . . . . . . . . . . . . . 4
3.2.2 Tendncia Determinstica . . . . . . . . . . . . . . . . . . . . . . . . 4
3.3 Identicao do Modelo . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5
3.4 Estimao do Modelo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5
3.5 Diagnstico do Modelo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5
3.6 Previses . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6

4 Concluses e comentrios 7

5 Referncias 7

6 Apndice 8

7 Anexo 10

1
1 Resumo
O presente trabalho tem por objetivo o ajuste de uma srie temporal em aes da
Petrobras para obteno de valores futuros. Para tanto utilizou-se a classe de modelos
ARIMA. O modelo obtido foi o ARIMA(2,0,0). Aps anlise de diagnstico e validao
do modelo foram realizadas previses. Os valores observados da srie esto dentro do
intervalo de conana das previses. Concluses e comentrios esto na parte nal do
trabalho.

Palavras-chave: Aes, Petrobras, ARIMA, Previso

2 Introduo
O mercado de aes brasileiro nos ltimos anos tem sofrido inuncia da crise poltica
instalada no pas. Tornando este mercado mais valtil e contribuindo na diculdade
em fazer previses sobre o comportamento de determinada aes. Investidores desse
geralmente fundamentam a compra ou venda de aes atravs do histrico de suas cotaes
de valores ou pela intuio do comportamento do mercado ou da anlise fundamentalista
da empresa. Neste trabalho, busca-se encontrar e ajustar um modelo de sries temporais
que se ajuste satisfatoriamente aos dados da srie nanceira dos valores das aes da
Petrobrs, possibilitando, assim, um estudo do comportamento e dos fatores relevantes
da srie e a previso de dados futuros da mesma[1].

2.1 Objetivo geral


Este estudo tem por objetivo ajustar uma srie temporal a dados de cotaes das aes
da Petrobrs (Petro4) no perodo entre 01/01/2010 e 07/07/2017.

2.2 Objetivos especcos


Identicar padres da srie por meio de estatstica descritiva.

Identicar o modelo a ser ajustado.

Estimar e diagnosticar o modelo escolhido.

Realizar previses e validar a performance do modelo.

2
3 Metodologia

3.1 Anlise Descritiva


Os dados do estudo foram obtidos do Instituto Reuters. So 91 observaes que tra-
tam do valor unitrio no incio do ms de aes da Petrobrs (Petro4) na bolsa de valores
Bovespa, no perodo compreendido entre 01/01/2010 e 07/07/2017, esses encontram-se
em anexo. A srie bem com o histograma e as estatsticas descritivas da mesma so apre-
sentados a seguir.

Figura 1: Histograma Petro4.

Min. 1st Qu. Median Mean 3rd Qu. Max. s.e.


6,58 13,53 17,34 18,55 22,88 37,32 6,89
Tabela 1: Medidas Resumo

A srie acima apresenta inicia-se em janeiro 2010 com seu valor mximo de R$37,32.
Apresentando oscilaes ao longo do tempo ela descresse at o ano de 2016 chegando a
atingir seu mnimo de R$6,58 em fevereiro de 2016. Aps esse perodo ele retoma seu
crescimento.

O histograma acima apresenta certa fuga de normalidade, o que constatado pelo


teste de Shapiro Wilk para normalidade. Esse apresentou valorP (valorP = 0, 046) pr-
ximo 5%. Todavia optou-se por trabalhar com os dados sem transform-los, uma vez
que no deseja-se perder em interpretao.

O menor valor observado da srie foi de R$6,58 enquanto que o maior valor foi de
R$37,32. A cotao mdia do perodo foi de R$18,84 com desvio padro de R$7,09.

3
3.2 Pr-ajuste do Modelo
Antes de ajustar o modelo necessrio vericar se srie apresenta sazonalidade e
tendncia determinsticas.

3.2.1 Sazonalidade Determinstica


Para testar a sazonalidade determinstica foi empregado o teste no paramtrico de
Kruskall-Walls. Esse apresentou valorP maior que o nvel de signicncia (V alorP =
0, 9999). Portanto no rejeitou-se a hiptese nula de no sazonalidade determinstica.

3.2.2 Tendncia Determinstica


Como o teste de Kruskall Wallis indicou a srie como no tendo sazonalidade deter-
minstica, pode-se proceder para a vericao da tendncia. Para tanto lanou-se mo do
teste teste de Dick Fuller, esse testa a estacionariedade da srie. O valorP do teste foi
maior que o nvel de signicncia (V alorP = 0, 435). Portanto no rejeitou-se a hiptese
nula de no estacionariedade determinstica. Uma rpida inspeo grca da srie mostra
a necessidade de um ajuste polinomial para o componente de tendncia da srie. optou-se
ento por um ajuste polinomial de grau 2. A componente de tendncia apresentada a
seguir.

T endt = 2179718.565 2162.055t + 0.536t2

Figura 2: Tendncia determinstica estimada e srie livre da tendncia determinstica.

Uma vez determinadas as componentes determinsticas e necessrio vericar a estaci-


onariedade da srie resultante (gura 2). O teste de Dickey Fuller retornou valorP igual a
0,036. Portanto rejeita-se a hiptese nula de no estacionariedade, podendo dessa forma
dar incio a fase de identicao.

4
3.3 Identicao do Modelo
A identicao do modelo se deu por meio da anlise grca das funes de autocor-
relao e autocorrelao parcial.

Figura 3: Funes de autocorrelao e autocorrelao parcial.

A funo de autocorrelao apresentou decaimento exponencial e comportamento se-


noidal. Como dois lags foram signicativos sugere-se a incluso de um termo autorregres-
sivo de ordem 2. A funo de correlao parcial no apresentou signicncia.

3.4 Estimao do Modelo


A funo de autocorrelao indicou a necessidade de um termo autorregressivo de or-
dem 2 no modelo. Ademais pelo fato da srie ser estacionria sugere-se d = 0. Termos de
mdias mveis no foram considerados.

Considerando o que foi explanado acima estimou-se um modelo ARIMA(2,0,0). Os


coecientes estimados so apresentados a seguir.

ar1 ar2 Intercepto


Coef 0,8620 -0.2260 0.1421
s.e. 0,1074 0,1102 0,5604
Tabela 2: Estimativas do modelo

O modelo apresentou AIC igual a 353,16 com varincia de estimada de 3,532.

3.5 Diagnstico do Modelo


Para vericar se os resduos do modelo so independentes e identicamente distribudos
(i.i.d.) executou-se o teste de Box-Pierce nos mesmos. O valorP obtido foi igual a 0,8072.

5
Portanto no rejeita-se a hiptese nula e conclui-se que os resduos so i.i.d..

Os grcos a seguir apresentam respectivamente o comportamento e a ACF dos res-


duos e tambm o valorP para o teste de Ljung Box.

Figura 4: Resduos padronizados, ACF dos Resduos e valorP para o teste de Ljung Box.

Os resduos acima se comportam de forma aleatria. A funo de autocorrelao


apresenta valores dentro dos limites especicados e os valorP's no teste de Ljung Box
esto acima do limite especicado. Conclui-se ento que o modelo satisfatrio.

3.6 Previses
O grco a seguir apresenta previses com uma janela de tamanho 6 para o modelo
especicado.
A tabela a seguir apresenta os valores de previso bem como a tendncia estimada da
srie.

6
Observado Predito Erro
Jan 2017 16 ,53 16 ,264 0 ,266
Fev 2017 16 ,12 14 ,549 1 ,571
Mar 2017 16 ,43 13 ,539 2 ,891
Abr 2017 15 ,32 13 ,089 2 ,231
Mai 2017 14 ,36 12 ,963 1 ,397
Jun 2017 13 ,54 12 ,993 0 ,547
Jul 2017 13 ,28 13 ,088 0 ,192
Tabela 3: Valores preditos para uma janela h = 7

O erro quadrtico mdio de previso foi de 2,595. Um valor relativamente alto quando
comparados com os valores apresentados pela srie. Observando a tabela acima percebe-
se que os meses de Maro e Abril apresentaram os maiores desvios. Esses meses devem
ser estudados.

Figura 5: Intervalo de conana das previses

Entretanto como pode-se observar no grco acima os valores observados da srie esto
dentro do intervalo de conana ao nvel de 95%, o que vlida o modelo quanto a previso.

4 Concluses e comentrios
A anlise de diagnstico validou o modelo estimado. As previses realizadas por esto
dentro do intervalo de conana, podendo desta forma ser empregado como ferramenta
auxiliar na compra e venda de aes Petrobrs (Petro4) para um futuro prximo.

5 Referncias
[1] ESPANHOL, Caroline P. & LOPES, Clia M. C. Aes do Mercado Financeiro: Um
estudo via modelo de sries temporais. Disponvel em: <http://www2.ime.unicamp.br/si
nape/sites/default/les/Caroline Celia SeriesTemporais.pdf>.

7
ECONOMIA UOL. Bolsa de Valores. Disponvel em: <https://economia.uol.com.br/
cotacoes/bolsas/acoes/bvsp-bovespa/petr4-sa/>. Acesso em: 15/07/2017.
MORETTIN, Pedro A. & TOLOI, Cllia M. Anlise de Sries Temporais. 2a ed., So
Paulo: Blucher, 2006.
ESPANHOL, Caroline P. & LOPES, Clia M. C. Aes do Mercado Financeiro: Um
estudo via modelo de sries temporais. Disponvel em: <http://www2.ime.unicamp.br/si
nape/sites/default/les/Caroline Celia SeriesTemporais.pdf>. Acesso em: 15/07/2017.

6 Apndice
Rotina utilizada:

# Limpar memoria e carregar pacotes ####


library(forecast)
library(tseries)
#install.packages("Kendall")
library(Kendall)

# Carregar dados ####


# Petro4 de 01/01/2010 a 07/07/2017:
dat = read.table("C:/Users/jackson/Downloads/Petro4.csv", header = T, sep = ";", dec
= ",")
#Primeira observacao do mes:
dat1 = aggregate(Dia Ano + Mes, FUN = min, data = dat)
dat1 = cbind(dat1, Cotacao = NA)
for(i in 1:nrow(dat1)){
dat1[i,4] = dat[dat$Ano == dat1[i,1] & dat$Mes == dat1[i,2]
& dat$Dia == dat1[i,3], 2]
}
dat1
dat = dat1[order(dat1$Ano, dat1$Mes),]; dat

# Serie ####
Z = ts(dat$Cotacao, start = 2010, freq = 12)
# Separando a serie em conjunto de treino e previsao:
Ztreino = window(Z, start = 2010, end = 2016.95)
ZObs = window(Z, start = 2017, end = 2017.5)

# Analise descritiva ####

8
hist(Ztreino, main = ".", ylab = "Frequncia", xlab = "Valor", col = "skyblue2", border
= "white")
summary(Ztreino)
round(sd(Ztreino),2)
#Teste normalidade:
shapiro.test(Ztreino)

# Sazonalidade deterministica e Tendencia ####


# Sazonalidade:
g = rep(1:12, 7)
dat1 = data.frame(Cotacao = as.numeric(Ztreino), Mes = g)
kruskal.test(Cotacao Mes, data = dat1)
# Tendencia:
adf.test(Ztreino)
# Tendncia:
t = as.numeric(time(Ztreino))
modR = lm(as.numeric(Ztreino) poly(t, degree = 2, raw = T), data = data.frame(Ztreino
= as.numeric(Ztreino), t))
ts.plot(cbind(Ztreino, modR$tted.values), main = "Indice mensal da Petro4", col = 1:2)
round(coef(modR), 3)
ZsemTend = Ztreino - modR$tted.values
plot(ZsemTend)
adf.test(ZsemTend)

# Identicacao do modelo ####


par(mfrow = c(1,2))
acf(ZsemTend)
pacf(ZsemTend)

# Estimacao ####
t = arima(ZsemTend, c(2,0,0))
par(mfrow = c(1,1))
tsdiag(t)
Box.test(t$residuals)

# Previsoes ####
ZPred = forecast(t, h = 7)
plot(forecast(t, h = 7), col = 2, bty = "n", ylab = "Previso", xlab = "Time", xlim =
c(2010,2017.7))

9
t2 = as.numeric(time(Z))[85:91]
Tend = coef(modR)[1] + coef(modR)[2]t2 + coef(modR)[3]t2
ZPred2 = ZPred$mean + Tend
Erro = cbind(ZObs, ZPred2, Erro = ZObs - ZPred2)
EQM = round(sum(Erro[,3]2)/7,3); EQM
IC95 = cbind(ZObs, Inferior = ZPred$lower[,2] + Tend, Superior = ZPred$upper[,2] +
Tend)
plot(Z)

# Gracos ####
par(mfrow = c(1,1))
plot(Z, main = "Petro4", xlim = c(2010, 2018), ylim = c(0,40))
abline(h = seq(10,45,10), v = seq(2010,2019,.5), lty = 2, col = "white")
axis(1, 2010:2018); axis(2)
lines(Z, col = 2)
lines(as.numeric(time(Z)), as.numeric(modR$tted.values), col = "green")
plot(Z, main = "Petro4", xlim = c(2010, 2018), ylim = c(-10,10))
abline(h = seq(-15,45,10), v = seq(2010,2019,.5), lty = 2, col = "white")
axis(1, 2010:2018); axis(2)
lines(as.numeric(time(Z)), as.numeric(ZsemTend), col = 2)

7 Anexo
Dados:
2010 2011 2012 2013 2014 2015 2016 2017

Jan 37.32 27.00 21.73 19.55 15.82 9.00 8.67 16.53

Feb 34.30 27.64 24.95 18.62 13.10 8.57 6.58 16.12

Mar 34.93 28.29 24.88 14.68 12.71 9.28 7.57 16.43

Apr 35.75 28.74 23.23 16.58 15.05 10.08 10.53 15.32

May 31.50 25.73 21.29 19.25 16.22 15.04 13.27 14.36

Jun 28.65 24.00 18.80 19.02 15.66 13.25 10.41 13.54

Jul 26.45 23.75 18.36 14.72 16.05 13.52 12.06 13.28

Aug 28.44 23.50 19.82 16.10 17.82 10.98 13.19

Sep 27.03 21.04 20.68 16.15 22.48 9.95 14.87

Oct 27.50 18.41 22.51 17.34 16.40 8.37 15.59

Nov 26.49 21.13 20.85 19.04 14.25 10.56 17.93

Dec 25.26 22.52 18.94 16.42 11.51 9.24 18.21

10