Escolar Documentos
Profissional Documentos
Cultura Documentos
Data de Depósito:
Assinatura: ______________________
Gostaria de agradecer primeiramente à minha família, que nem sempre pode estar perto
fisicamente, mas estão sempre próximos para ajudar com uma palavra de motivação e para brindar
os bons momentos, quando eles chegam. À minha hoje esposa, Luísa, por seu companheirismo e
afeto, companheira que está sempre buscando ir além e que com isso me ajuda a também ir cada
vez mais longe. Aos meus pais, Dalila e Paulo pelo amor incondicional e pela educação que
me deram, que foram os bens mais valiosos que eu poderia herdar. Aos meus irmãos, Izabele e
Bruno e minha "melhor madrasta"Graça pelos sorrisos, confiança e suporte. Vocês são todos
meus heróis que não estão nas capas de revistas em quadrinhos.
Em segundo lugar, agradeço minha segunda família, meus sogros Maria José e Eduardo,
minhas cunhadas Carol e Isabela e co-cunhado Alexandre. Vocês se tornaram verdadeiros portos
seguros em minha vida com os quais sei que posso contar.
Meu professor orientador, Antônio Castelo, obrigado por me guiar nesse vale imenso da
ciência de dados. Em meio a tantos caminhos possíveis, ter algumas orientações sobre onde o
Sol nasce pode ser mais do que suficiente para alcançarmos o objetivo final.
Expresso, por fim, minha gratidão à equipe de suporte do MBA, que por várias vezes
nos ouviram e, onde tiveram condições, nos ajudaram da melhor forma possível. Vocês foram
ótimos representantes dessa grandiosa USP, a qual desejo vida longa pela magnífica história que
tem, defendendo a verdadeira ciência que já nos levou tão longe.
“Não é possível convencer um crente de coisa alguma, pois suas crenças não se baseiam em
evidências; baseiam-se numa profunda necessidade de acreditar”
(Carl Sagan)
RESUMO
DOLABELA, L. F. Sistema de predição para investimentos na bolsa de valores: compa-
rativo entre modelos estocásticos. 2022. 63 p. Trabalho de Conclusão de Curso (curso em
Ciência de Dados) – Instituto de Ciências Matemáticas e de Computação, Universidade de São
Paulo, São Carlos – SP, 2022.
Este trabalho apresenta um compilado de métodos para apoio à tomada de decisões de compra
ou venda de ações na bolsa de valores. Ele foi dividido em duas abordagens distintas, a primeira,
utilizando-se de modelos de aprendizado supervisionado e a segunda através de modelos de
predição de séries temporais. Para cada uma das abordagens, foi necessário a seleção de variáveis
preditoras, as quais foram baseadas nos métodos de análise técnica e de análise fundamentalista.
Além disso, foram utilizadas técnicas de filtragem de sinais para apoiar o sistema de predição
por séries temporais. A saída de cada um dos modelos foi a decisão pela compra ou não da
ação baseada em uma margem pré-definida de ganho sobre o valor investido. Os resultados
encontrados não foram tão promissores quanto àqueles de trabalhos relacionados. Entretanto,
encontrou-se razoável poder de predição para o modelo que mistura a filtragem através de filtro
wavelet com o modelo de séries temporais SARIMAX.
This work presents some methods for decision taking on whether to invest or not in a given
stock. It is dividided into two different perspectives; the first is based on supervised learning and
the second on time series forecasting. For each of the perspectives, it was necessary to select
features, which ones were based on technical and fundamental analyses. In addition, filtering
and smoothing techniques were used to support the time series forecasting algorithm. The output
from each of the predictive models was a decision on wether to buy or not a given stock based
on a pre-defined raise on the invested money. The results found were not as promising as some
of other related works. In contrast, it was found that there is a relatively good predictive power
when mixing wavelet filters and the time series forecasting algorithm SARIMAX.
Keywords: Supervised learning, Time series forecasting, Economic time series, Stock market.
LISTA DE ILUSTRAÇÕES
1 INTRODUÇÃO . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21
1.1 Bolsa de Valores e o Mercado de Ações . . . . . . . . . . . . . . . . 21
1.2 Estratégias e Técnicas de Investimento . . . . . . . . . . . . . . . . . 22
1.3 Hipótese do Mercado Eficiente . . . . . . . . . . . . . . . . . . . . . . 23
1.4 Uso de aprendizado de máquina para superar o mercado . . . . . . 24
2 REVISÃO TEÓRICA . . . . . . . . . . . . . . . . . . . . . . . . . . 25
2.1 Análise Técnica . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25
2.2 Análise Fundamentalista . . . . . . . . . . . . . . . . . . . . . . . . . . 26
2.3 Aprendizado Supervisionado . . . . . . . . . . . . . . . . . . . . . . . . 27
2.3.1 K-Vizinhos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27
2.3.2 Árvores de Decisão e Florestas Aleatórias . . . . . . . . . . . . . . . . 28
2.3.3 Naïve Bayes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29
2.3.4 Regressão Logística . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30
2.4 Séries Temporais . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30
2.4.1 Modelos ARIMA e SARIMA . . . . . . . . . . . . . . . . . . . . . . . 31
2.4.1.1 Modelo SARIMAX . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32
2.5 Suavização de Séries Temporais . . . . . . . . . . . . . . . . . . . . . 33
2.5.1 Suavização Exponencial . . . . . . . . . . . . . . . . . . . . . . . . . . 33
2.5.2 Transformada Wavelet . . . . . . . . . . . . . . . . . . . . . . . . . . . 34
2.5.2.1 Motivação . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34
2.5.2.2 Conceitos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35
2.5.2.3 Decomposição Multiresolução . . . . . . . . . . . . . . . . . . . . . . . . . 37
3 MODELAGEM . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39
3.1 Abordagem 1: Modelos Supervisionados . . . . . . . . . . . . . . . . 39
3.1.1 Obtenção de dados brutos e rotulação das instâncias . . . . . . . . . 39
3.1.2 Seleção de atributos . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41
3.1.3 Aplicação dos modelos supervisionados e avaliação de resultados . 42
3.2 Abordagem 2: Modelos de Séries Temporais . . . . . . . . . . . . . . 42
3.2.1 Filtragem do sinal, aplicação do modelo, tomada de decisão e ava-
liação dos resultados . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42
4 RESULTADOS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45
4.1 Abordagem 1: Modelos Supervisionados . . . . . . . . . . . . . . . . 45
4.1.1 Obtenção de dados brutos . . . . . . . . . . . . . . . . . . . . . . . . . 45
4.1.2 Rotulação das instâncias . . . . . . . . . . . . . . . . . . . . . . . . . . 45
4.1.3 Seleção de Atributos . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46
4.1.4 Aplicação de modelo supervisionado . . . . . . . . . . . . . . . . . . . 49
4.1.5 Avaliação dos Resultados . . . . . . . . . . . . . . . . . . . . . . . . . 50
4.1.5.1 K-Vizinhos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 50
4.1.5.2 Florestas Aleatórias . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 50
4.1.5.3 Regressão Logística e Naïve Bayes . . . . . . . . . . . . . . . . . . . . . . 51
4.2 Abordagem 2: Modelos de Séries Temporais . . . . . . . . . . . . . . 53
4.2.1 Filtragem do Sinal . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 53
4.2.1.1 Aplicação do Modelo de Séries Temporais . . . . . . . . . . . . . . . . . . 55
4.2.1.2 Tomada de Decisão . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 56
4.2.1.3 Avaliação dos Resultados . . . . . . . . . . . . . . . . . . . . . . . . . . . 56
5 CONCLUSÃO . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 59
5.1 Limitações e Trabalhos Futuros . . . . . . . . . . . . . . . . . . . . . . 60
REFERÊNCIAS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 61
21
CAPÍTULO
1
INTRODUÇÃO
Existe extensa bibliografia tanto a favor como contra a possibilidade de se obter resultados
tentando prever o comportamento dos preços de ações. Prever o comportamento de preços de
ações envolve diretamente a possibilidade de se obter rendimento financeiro acima da média
do mercado e por isso há tanto interesse de estudiosos e de empresas financeiras sobre o tema.
Este trabalho propõe avaliar diversas metodologias de investimento baseados em aprendizado de
máquina, na tentativa de encontrar modelos mais ou menos promissores para amparar decisões
de investimento na bolsa de valores.
Ações são títulos que representam uma parcela do capital de uma empresa. Uma empresa
de capital aberto é aquela cujas ações têm livre circulação dentro de uma bolsa de valores, que
podem ser negociadas por pessoas físicas e jurídicas através de corretoras autorizadas.
Desde 2002, quando existiam cerca de 85000 contas em bolsa de valores, existiu um
processo de facilitação ao acesso ao mercado de ações através da redução de custos de corretagem,
surgimento do sistema homebroker e popularização dos aplicativos em smartphones (SOUZA,
2009). Em 2020, cerca de 3,2 milhões de pessoas possuíam contas na B3, hoje a única bolsa de
valores do Brasil, cujo volume de negócios diário chegou a atingir a marca de 44 bilhões de reais
em fevereiro de 2021 (GOEKING, 2021)(ANDRADE, 2021).
Para refletir a performance das ações listadas, foi criado em 1968 o índice Bovespa.
O índice Bovespa, ou Ibovespa, é uma carteira de ações teórica composta pelas ações que
correspondem a 80% de todo o volume transacionado na B3 (B3, 2021).
22 Capítulo 1. Introdução
1. comprar periodicamente ações que compõem algum índice (o Ibovespa, por exemplo) e
vendê-las após longo prazo ou em caso de notícias extraordinárias que justifiquem tal ação.
Compras de ações com perspectiva de venda apenas no longo prazo são conhecidas como
estratégia "buy and hold";
1. Forma forte: todas as informações, sendo elas públicas ou não, são levadas em conta no
preço atual da ação;
2. Forma semi-forte: todas as informações são levadas em conta no preço atual da ação assim
que se tornam públicas;
3. Forma fraca: os valores passados das ações não influenciam no preço futuro.
Segundo Fama, a eficiência de mercado pode ser maior ou menor a depender da quanti-
dade de participantes na bolsa e da disponibilidade das informações de mercado. Por essa razão,
existem muitos trabalhos que visam testar a eficiência de mercado em diferentes países.
As definições de formas de eficiência de mercado levam ao questionamento sobre a
validade das estratégias de análise de preços de ações. Conforme observado nas seções anteriores,
as análises técnica e fundamentalista baseiam-se em informações públicas e passadas para avaliar
e tomar decisões de compra e venda. A forma fraca de eficiência de mercado seria suficiente
para inviabilizar o uso da análise técnica e predição por séries temporais, já que estas se baseiam
nos preços passados para predizer os futuros, enquanto a forma semi-forte inviabilizaria a
análise fundamentalista, que utiliza informações públicas. Em última instância, a aplicação de
algoritmos computacionais também desafia a hipótese de eficiência de mercado, já que estes
também utilizam de informações públicas para predição de resultados (MALKIEL, 2003).
24 Capítulo 1. Introdução
CAPÍTULO
2
REVISÃO TEÓRICA
1. média móvel(MM): é calculada pela média dos N1 últimos preços de fechamento de uma
determinada ação.
MMN1 ,d = N11 ∑di=d−N1 P fi
em que P fi é o preço de fechamento da ação no dia i,
MMN1 ,d a média móvel de período N1 calculada no dia d,
N1 dependerá de cada estratégia, mas os valores 20 e 200 se destacam dentre os demais;
Além dos indicadores obtidos pelo comportamento dos preços, existem diversos padrões
que, segundo a análise técnica, são bons indicativos do comportamento do mercado, como
"martelo", "estrela do amanhã", "ombro-cabeça-ombro"dentre outros (SANTANA, 1997). Da
mesma forma, vários trabalhos como os de Rueda e Estrada (2009) e Boainain e Pereira (2009)
buscam avaliar se os métodos utilizados na análise técnica são capazes de predizer ao menos em
parte o valor futuro de ações, o que parece ainda não ser consenso dentro da academia.
4. taxa selic e inflação: ações concorrem com títulos de dívida quando se tratam de formas
de investimento e maiores juros ou maior inflação tornam títulos de dívida mais atraentes
por serem usualmente indexados a esses indicadores, enquanto ações são mais buscadas
no cenário contrário, já que títulos de dívida passam a responder por retornos menores,
aumentando o "apetite"especulativo de investidores;
1. K-vizinhos (KNN)
2. Árvores de decisão
3. Florestas aleatórias
4. Naïve Bayes
5. Regressão logística
2.3.1 K-Vizinhos
O algoritmo de K-Vizinhos realiza a classificação de uma entrada através da proximidade
(ou distância) dos demais dados de entrada, cuja classificação de saída é conhecida. A letra
"K"que da nome ao algoritmo se refere ao número de pontos vizinhos que são considerados
para determinar a classificação da nova amostra. Por exemplo, consideremos um problema
com duas classes possíveis de saída, "A"e "B". Com K = 3, são verificados os 3 pontos mais
próximos à nova amostra. Se a maioria dos 3 pontos for da classe "A", então a nova amostra
será classificada como "A"e "B"caso contrário (KOERICH, 2021). A medida de distância ou de
proximidade utilizada pelo algoritmo é um dos seus hiper-parâmetros. Algumas medidas comuns
são a "Euclidiana"e a "Manhattan", dadas pelas equações a seguir:
28 Capítulo 2. Revisão Teórica
p
∙ Euclidiana: d = ∑i (xi − yi )2
∙ Manhattan: d = ∑i |xi − yi |
onde, xi e yi são as projeções dos pontos X e Y nas i dimensões. Não existe um número
"K"ideal a ser utilizado no algoritmo e usualmente se determina empiricamente qual o melhor
valor com base nas métricas de avaliação do modelo nos conjuntos de treinamento e teste.
Séries como o valor de ações são denominadas séries temporais, devido a dependência
temporal entre os dados. Existem, portanto, algoritmos específicos que utilizam de tal dependên-
cia para melhorar a predição dos valores futuros da série.
onde,
variáveis exógenas a um erro. Este erro, por sua vez, passa a ser interpretado por um modelo
SARIMA e conterá a informação histórica da variável endógena. Em um modelo simplificado
ARMA com uma variável exógena, escreve-se:
ŷt = β xt + nt
p q
nt = µ − ∑i=1 φi nt−i − ∑ j=1 θ j et− j
onde,
yt é a variável endógena, xt a variável exógena, nt o erro decorrente da aproximação
linear entre yt e xt , modelado por um modelo ARMA com parâmetros p e q.
A extensão para um modelo SARIMA com múltiplas variáveis exógenas pode ser
encontrado realizando processo análogo para nt quando apresentado o modelo SARIMA para ŷt
(HYNDMAN, 2010).
1. x¯0 = x0
Em x̄T , x0 será ponderado por (1 − α)T . Como 1 − α < 1, a influência de x0 será cada
vez menor a medida que T aumenta.
Todo sinal variante no tempo pode ser decomposto em uma combinação infinita de
funções senoidais através da transformada inversa de Fourier, conforme a equação:
1
Z ∞
f (t) = F(ω)e jωt dω (2.1)
2π −∞
A equação 2.1 diz que uma função f (t) qualquer é igual a somatória em dω de −∞ a ∞
de funções senoidais ponderadas por pesos F(ω). Os pesos F(ω) por sua vez são dados pela
transformada de Fourier:
Z ∞
F(ω) = f (t)e− jωt dt (2.2)
−∞
(SOUZA, 2021)
Analisar um sinal no domínio do tempo é semelhante a dizer que suas propriedades
estão sendo observadas através do sinal original f (t). Já analisá-lo no domínio da frequência é
equivalente a observar as propriedades de sua transformada F(ω).
A transformada de Fourier permite distinguir componentes de baixa e alta frequência de
um sinal com razoável facilidade. Por exemplo, para selecionar as componentes de alta frequência,
basta escolher no domínio da frequência aquelas em que ω supera uma frequência limiar ω0 . Em
uma situação mais prática, para filtrar um sinal qualquer, obtêm-se sua transformada de Fourier
F(ω), seleciona-se suas componentes na faixa de frequências desejada e faz-se a transformação
inversa do sinal resultante.
Para sinais estacionários no tempo, a transformada de Fourier é particularmente útil.
Entretanto, existem aplicações em que é desejado filtrar e analisar o comportamento do sinal em
momentos específicos e, nestes casos, a transformada de Fourier é menos eficiente. Isto ocorre
porque um sinal não estacionário é decomposto em uma soma de ondas senoidais estacionárias,
sem localização temporal. Em tais situações, a transformada de wavelet pode ser uma ferramenta
mais adequada, pois situa uma classe de funções não só no domínio da frequência, mas também
no tempo (MATLAB, 2016).
2.5. Suavização de Séries Temporais 35
2.5.2.2 Conceitos
1 t −τ
Z ∞
F(s, τ) = √ f (t)ψ dt (2.3)
s −∞ s
Ter energia finita é o que diferencia a transformada wavelet da de Fourier, pois tal
propriedade torna a função wavelet não estacionária e, portanto, "localizável"no tempo. A
primeira função conhecida e uma das mais simples é a wavelet de Haar (SOARES, 2008), que é
definida pela equação 2.6.
1 se 0 < t ≤ 21
ψ(t) = −1 se 12 < t ≤ 1 (2.6)
0 se caso contrário
Atualmente, existem diversas outras funções (ou bases) wavelet mais sofisticadas, como
a Gaussiana, de Daubechies, Coiflet e Morlet (vide Figura 3).
Para adaptar as bases wavelet ψ(t) às funções originais, é necessário que essas sejam
contraídas ou expandidas e também deslocadas no tempo. Tais operações são possíveis graças
à introdução das variáveis τ (parâmetro de translação) e s (parâmetro de escala ou de contra-
ção/expansão). A Figura 4 demonstra o efeito da variação dos parâmetros na função wavelet de
Morlet.
Finalmente, a transformada wavelet inversa é dada pela equação:
1 1 t −τ
Z ∞Z ∞
f (t) = F(s, τ)ψ ds dτ (2.7)
C −∞ −∞ s2 s
36 Capítulo 2. Revisão Teórica
Considerando o termo s12 F(s, τ) como uma função de ponderação, pode-se considerar
que f (t) é uma soma ponderada de bases wavelet deslocadas e escaladas no tempo.
É possível fazer um exemplo para wavelet de filtragem do sinal equivalente ao utilizado
para a transformada de Fourier: se for necessário filtrar altas frequências de um sinal, basta
escolher s que seja menor que um limiar estabelecido. Entretanto, se além disso for necessário
estabelecer um período de tempo que esse filtro seja válido, então basta estabelecer os limites
superior e inferior de τ.
Um sinal pode apresentar diferentes características em cada uma de suas regiões que
impedem de encontrar um valor ótimo de resolução que sirva para representar todo o seu
conteúdo. Por exemplo, considerando uma imagem de um ambiente com objetos de dimensões
muito distintas, para reconhecer cada um é necessário que os observe a "diferentes distâncias", o
que para um algoritmo de reconhecimento é o equivalente a trabalhar a diferentes resoluções do
sinal. Ao decompor um sinal em diferentes níveis de resolução, é possível superar a dificuldade
da dimensionalidade, pois cada objeto pode ser tratado a uma resolução diferente.
Em um de seus artigos, o francês Stephane Mallat propõe uma decomposição multire-
solução empregando wavelets (MALLAT, 1989). Mallat demonstra que é possível decompor
um sinal como a soma de uma aproximação wavelet ci [ni ] e um detalhamento di [ni ]. O sinal de
aproximação poderá ser decimado (alterando sua resolução) e novamente decomposto como a
soma de uma nova aproximação wavelet e um novo detalhamento.
A decomposição multiresolução pode ser alcançada com o modelo de banco de filtros,
que corresponde a uma série de filtros passa-alta H[n] e passa-baixas L[n], como ilustrado na
Figura 5. Cada dupla formada por um filtro passa-alta e outro passa-baixa é dito nível do banco.
O sinal aproximado pode ser obtido pela soma entre o último resultado aproximado saindo do
N-ésimo filtro (dN [nN ]) passa-baixa e as saídas dos filtros passa-alta. Quanto mais níveis o banco
tiver, mais próximo do sinal original será a aproximação resultante.
CAPÍTULO
3
MODELAGEM
de valores Bovespa. As bases públicas do Banco Central do Brasil e do Federal Reserve foram
utilizados para obter indicadores macroeconômicos (BCB, 2021) (FED, 2021).
O problema de predição foi transformado em um de classificação, de tal forma que a
saída pôde assumir os valores "Buy"quando for um momento de compra e "Hold"quando for um
momento de não comprar (ou vender, caso o algoritmo tenha optado pela compra na decisão
anterior).
A escolha desse método se deve ao fato de que o problema de classificação possui mais
algoritmos para tratamento. Além disso, observando a bibliografia que trata de algoritmos de
predição, os modelos envolvendo séries temporais são capazes de apresentar erros pequenos de
predição para o passo seguinte. Isto é, em uma cotação diária, um algoritmo de série temporal
é capaz de predizer com boa precisão o valor da ação no dia seguinte. Entretanto, devido às
variações diárias dos valores das ações serem da ordem de 1%, pequenos erros são suficientes
para caracterizar perdas e não ganhos com a compra da ação e, no acumulado geral, tais erros
podem ser suficientes para inviabilizar o uso do modelo como forma de decisão de investimento.
Supondo o valor de uma ação no tempo t como sendo xt , a variável de saída yt será:
”Buy” se xt+T > p × xt , 0 < T ≤ τ
yt = (3.1)
”Hold” caso contrário
ou seja, a saída será "Buy"caso em algum momento no futuro t + T o valor da ação superar p
vezes o valor atual. Para que o futuro não seja distante demais, limita-se a espera até um momento
τ. Caso contrário, a saída será "Hold", pois se entende que a compra não será vantajosa.
Em uma situação real, um investidor ao observar uma ação na bolsa tem três escolhas
possíveis: "comprar", "vender"ou "manter a posição atual". Isto é, em um cenário onde se prevê
alta acima de um limiar, o investidor deve comprá-la. Na situação de estabilidade, mantê-la e na
queda, vendê-la. Entretanto, a adição de uma terceira opção implica em aumento da complexidade
dos algoritmos e também da análise do desempenho preditivo, o que justificou o uso apenas das
opções comprar e vender para análise da performance de decisão.
Para facilitar a escrita e a menção à equação 3.1, ela será designada pelo operador Decisão:
Dτ (xt ). Por exemplo, objetivando-se avaliar se a compra deve ser feita para um horizonte mensal
(D30 (xt )):
”Buy” se xt+T > p × xt , 0 < T ≤ 30 dias
D30 (xt ) = (3.2)
”Hold” caso contrário
Em uma outra perspectiva, pode-se calcular qual a diferença obtida entre o valor atual da
ação xt e o valor máximo alcançado da ação dentro do período t + T com 0 < T ≤ τ:
”Buy” se ∆Mτ (xt ) > p × xt
Dτ (xt ) = (3.4)
”Hold” caso contrário
Para facilitar o entendimento, é importante destacar que as equações 3.1 e 3.4 retornam os
mesmos resultados. Entretanto, sob a perspectiva da equação 3.4, introduz-se um novo operador
∆Mτ (xt ) (dito Delta máximo). Esse operador será utilizado no contexto de análise de seleção de
variáveis.
Para exemplificar o uso dos operadores Decisão e Delta máximo:
T 0 1 2 3 4 5 6 7 8 9 10
xt+T 11 10,5 11 13 15 12 11 12 13 9 10,2
Sendo x1 (t) a cotação diária de PETR4 e x2 (t) a cotação diária de ABEV3, é calculada a
correlação de Pearson entre x1 (t) e x2 (t).
temporais. Em outras palavras, a cada passo de tempo, o modelo prediz τ valores, correspondentes
aos τ passos de tempo no futuro. Esses τ valores são aplicados em uma equação Decisão Dτ (xt )
que retorna "Buy"ou "Hold".
Por fim, o resultado é avaliado de forma análoga aos modelos supervisionados da
Abordagem 1.
45
CAPÍTULO
4
RESULTADOS
Esse capítulo foi separado pelos resultados obtidos para cada uma das abordagens listadas
no Capítulo 3. Algumas das etapas são comuns às diferentes abordagens e quando isso ocorrer
serão apenas mencionadas no texto para manter uma sequência lógica mais compreensível.
a 27 de outubro de 2020. Para utilização dos métodos para séries temporais, as cotações de
feriados, quando a bolsa não opera e não existe cotação para o dia, foram consideradas como a
mesma do dia imediatamente anterior em que a cotação estava disponível.
As instâncias foram rotuladas para decisões diárias, semanais, mensais, trimestrais e
semestrais, considerando-se que cada semana é composta por 5 dias úteis e o mês 20 dias
úteis. Como exemplo, na decisões trimestrais, aplicou-se o operador Decisão ∆M60 (xt ), pois um
trimestre corresponde a 60 dias úteis segundo a premissa anterior.
O valor de p para o fator multiplicador que define entre as decisões "Buy"e "Hold"(vide
equação 3.4) foi escolhido conforme o período de análise. Isso porque para prazos mais longos
de espera entre compra e venda de uma ação, o percentual de retorno esperado pelo investimento
deve ser maior. Foram definidos os seguintes valores de p:
* D1 (xt ): p = 0, 069%
* D5 (xt ): p = 0, 345%
A partir dos valores estabelecidos, foram obtidas as distribuições para os rótulos de saída
conforme a Figura 8. É importante notar que a medida que o período de δM aumenta, a proporção
"Buy"aumenta, visto que há maior período para que a ação apresente ganhos suficientes para
justificar a compra. Dessa forma, há um desbalanceamento severo dos dados, salvo quando no
caso de D1 .
PETR4
PETR3 0.962664
GGBR3 0.830205
GGBR4 0.826014
ROMI3 0.810781
CSNA3 0.786256
RSUL4 0.747127
GOLL4 0.744132
USIM5 0.727082
BRAP3 0.721387
EQPA5 0.706500
Tabela 1 – Os dez maiores valores de correlação de Pearson entre a cotação PETR4 e demais ações.
Fonte: Autor
∆M1 (xt ) ∆M5 (xt ) ∆M20 (xt ) ∆M60 (xt ) ∆M120 (xt )
Ação Correlação Ação Correlação Ação Correlação Ação Correlação Ação Correlação
BRGE7 0,022435 MSPA3 0,162440 EALT4 0,265442 EALT4 0,364290 EALT4 0,371951
VIVR3 0,021533 NEMO5 0,159336 MSPA3 0,248337 TESA3 0,323262 MSPA3 0,334323
TESA3 0,020331 EALT4 0,148077 TESA3 0,239524 MSPA3 0,302122 ATOM3 0,310896
CEED3 0,019754 MSPA4 0,146218 SGPS3 0,234154 ATOM3 0,281156 Vol IBOV 0,304982
Vol PETR4 0,016919 SGPS3 0,144073 NEMO5 0,231393 MTIG4 0,274901 MSPA4 0,298844
JBDU3 0,016381 CASN3 0,137367 VIVR3 0,225025 VIVR3 0,274080 BIOM3 0,293526
ATOM3 0,016176 VIVR3 0,136929 JBDU3 0,203335 Vol IBOV 0,269598 CAML3 0,287721
CPLE5 0,016111 TESA3 0,131889 MSPA4 0,196742 SGPS3 0,267617 TESA3 0,283813
AHEB3 0,015442 JBDU3 0,131094 BTOW3 0,193190 BAZA3 0,262309 JOPA4 0,283664
SGPS3 0,015244 CEED3 0,125884 CTNM3 0,189813 CURY3 0,254443 PTNT4 0,281160
NEMO5 0,014202 BTOW3 0,122971 CASN3 0,188267 UNIP3 0,254055 EEEL3 0,279416
Tabela 2 – Os dez maiores valores de correlação de Pearson entre os Delta Máximo diário, semanal,
mensal, trimestral e semestral e demais ações1 .
Fonte: Autor
nica com as séries Delta Máximo. De modo equivalente ao mostrado na Tabela 2, as correlações
são baixas, indicando baixo poder preditivo entre as variáveis e os movimentos futuros da ação.
Tabela 3 – Os dez maiores valores de correlação de Pearson entre os Delta Máximo e indicadores de
análise técnica2 .
Fonte: Autor
Tabela 4 – Os dez maiores valores de correlação de Pearson entre os Delta Máximo trimestral e semestral
e indicadores de análise fundamentalista 3 .
Fonte: Autor
móveis de periodicidade 21 e 200, "Brent"o brent de petróleo e "SPX"o índice Standard e Poor’s
3 "DL"significa dívida líquida, "PC"passivo circulante, "AT"ativos totais, "PL"patrimônio líquido,
"MKTCAP"capitalização de mercado e "IndProd"índice de produção industrial
50 Capítulo 4. Resultados
O algoritmo de Florestas Aleatórias foi utilizado com 10, 40, 70 e 100 árvores. As
métricas de avaliação podem ser observadas nas Figuras 11 e 12.
Os resultados obtidos se assemelharam muito ao método KNN e os comentários sobre
precisão e revocação para aquele método se aplicam a este.
4.1. Abordagem 1: Modelos Supervisionados 51
mento aleatório nas decisões. Para o algoritmo Naïve Bayes, por outro lado, os resultados de teste
revelam que as predições foram todas como "Buy"nas decisões semanal, mensal, implicando em
revocação 100%. Importante ressaltar que há em todos os algoritmos a precisão persistiu mais
alta que a proporção de "Buy"para o caso da decisão diária.
4.2. Abordagem 2: Modelos de Séries Temporais 53
Figura 17 – Comparação entre as entradas para o modelo de séries temporais: sinal original (PETR4),
saída do filtro exponencial (Exponential Smoothing) e saída do filtro de wavelet (Wavelet).
Fonte: Autor
Figura 18 – Série original PETR4 e predita com um passo adiante pelo método SARIMAX, sem filtragem
e sem aplicação de variáveis exógenas. Fonte: Autor
Após a obtenção das predições de valores futuros, a equação de decisão 3.4 é calculada
substituindo-se os valores futuros xt+T pelos preditos. No atual escopo, foram avaliados os
resultados para decisão com periodicidade diária. Desta forma, toma-se a predição para o dia
posterior e verifica-se se ela é maior que o valor atual multiplicado pelo ganho p diário esperado
(p = 0, 069%).
Tabela 5 – Resultados de precisão e revocação dos modelos SARIMAX com e sem uso de variáveis
exógenas e com e sem uso dos filtros exponencial e Wavelet. Fonte: Autor
Para verificar a significância estatística deste último método com uma tentativa aleatória,
foi estabelecida a seguinte hipótese nula: um decisor aleatório, com mesma probabilidade
4.2. Abordagem 2: Modelos de Séries Temporais 57
de decidir por "Buy"do que o modelo SARIMA precedido de filtro Wavelet, é capaz de obter
resultados tão bons ou melhores do que este. A hipótese alternativa: o modelo SARIMA precedido
de filtro Wavelet tem poder de predição superior a um decisor aleatório.
Para testar a hipótese nula, foi realizada a amostragem de 10000 vetores aleatórios
obtidos pela seleção com reposição do vetor de decisões gerado pelo algoritmo SARIMAX
com filtro Wavelet. Em apenas 1,01% das vezes foram obtidas precisões maiores do que o
modelo. Dessa forma, esse estudo corrobora com a hipótese alternativa de que tal modelo supera
a capacidade preditiva de um decisor aleatório a partir da probabilidade de 5%.
Quando as variáveis exógenas foram inseridas nos modelos, verificou-se que invariavel-
mente os resultados de precisão foram inferiores aos algoritmos originais. Como verificado na
etapa de seleção de variáveis, há fraca correlação das variáveis exógenas com as séries Delta
Máximo e, dessa forma, era esperado que usá-las não traria benefícios significativos aos modelos
de predição.
59
CAPÍTULO
5
CONCLUSÃO
A tarefa de predizer o valor futuro de uma ação está longe de terminar. Ao longo
deste trabalho, foram utilizados métodos próximos ao que outros autores utilizaram, porém os
resultados obtidos foram bastante diferentes. Para explicar tais diferenças, não é tarefa simples,
contudo. Uma série de razões podem explicar o todo: uso de algoritmos ligeiramente diferentes,
bases de dados distintas, seleção diferente de variáveis preditoras ou até mesmo algum erro
que tenha passado despercebido durante a implementação. Na realidade, uma das observações
importantes é a de que predizer o valor em futuro próximo da ação não é, por si só, um grande
desafio, e diversos algoritmos conseguem fazê-lo com pequena margem de erro. Entretanto, o
trabalho que se mostrou árduo foi de utilizar tais predições para identificar os momentos de
compra e venda da ação. Isso porque os pequenos erros gerados são suficientes para causar erros
sistêmicos na tomada de decisão pela compra ou venda.
Uma das explicações para a grande dificuldade de predição reside em encontrar variáveis
correlacionadas com os valores futuros das ações. Isso porque uma correlação com o valor atual
não implica em correlação com os valores futuros; em outras palavras, se o preço do barril de
petróleo subiu hoje, implica que as ações da Petrobras tem maiores chances de também terem
subido hoje, mas isso não implicará na subida das ações amanhã.
As componentes auto-regressiva e de médias móveis foram iguais a zero quando foi
executado o algoritmo do SARIMAX. Isso é um indicativo que há baixa correlação entre o
histórico da ação com seus valores futuros. Tais resultados expressam a desconexão entre os
valores atuais ou passados com os valores futuros de determinada ação, corroborando com a
hipótese de mercado eficiente, ao menos em sua forma fraca.
Em contrapartida às dificuldades encontradas, foi identificado que os algoritmos KNN
com K igual 13 e SARIMAX aplicado com uma etapa anterior de filtragem através de filtro
wavelet obtiveram resultados de 54% e 56% de precisão, respectivamente. Simulando-se escolhas
aleatórias, rejeitou-se a hipótese nula de que os modelos obtidos sejam equivalentes a escolher
60 Capítulo 5. Conclusão
REFERÊNCIAS
LI ZHIJUN YANG, T. L. H. Algorithmic trading strategy based on massive data mining. 2014.
Citado na página 24.
MALKIEL, B. G. The efficient market hypothesis and its critics. CEPS Working Paper, v. 91,
04 2003. Citado na página 23.
MATLAB. Understanding Wavelets, Part 1: What Are Wavelets. 2016. Disponível em:
<https://www.youtube.com/watch?v=QX1-xGVFqmw>. Acesso em: 22/09/2021. Citado na
página 34.
MORETTIN, P. A.; TOLOI, C. M. C. Análise de Séries Temporais. São Paulo: Blucher, 2006.
Citado na página 33.
SANTANA, F. Árvores de Decisão (Projeto passo a passo). 2020. Disponível em: <https:
//minerandodados.com.br/arvores-de-decisao-conceitos-e-aplicacoes/>. Acesso em: 20/12/2021.
Citado na página 28.
XIA, R.; MENG, K.; KIAN, F.; WANG, Z.-L. Online wavelet denoising via a moving window.
Acta Automatica Sinica, v. 33, n. 9, p. 897 – 901, 09 2007. Citado na página 54.
UNIVERSIDADE DE SÃO PAULO
Instituto de Ciências Matemáticas e de Computação