Você está na página 1de 66

UNIVERSIDADE DE SÃO PAULO

Instituto de Ciências Matemáticas e de Computação

Sistema de predição para investimentos na bolsa de valores:


comparativo entre modelos estocásticos

Luiz Felipe Dolabela Santos


Trabalho de Conclusão de curso do Programa de Pós-Graduação em
Ciências de Computação e Matemática Computacional (PPG-CCMC)
SERVIÇO DE PÓS-GRADUAÇÃO DO ICMC-USP

Data de Depósito:

Assinatura: ______________________

Luiz Felipe Dolabela Santos

Sistema de predição para investimentos na bolsa de valores:


comparativo entre modelos estocásticos

Trabalho de Conclusão de Curso apresentado ao


Instituto de Ciências Matemáticas e de Computação –
ICMC-USP, como parte dos requisitos para obtenção
do título de MBA em Ciência de Dados.
Área de Concentração: Ciências de Computação e
Matemática Computacional
Orientador: Prof. Dr. Antonio Castelo Filho

USP – São Carlos


Janeiro de 2022
Ficha catalográfica elaborada pela Biblioteca Prof. Achille Bassi
e Seção Técnica de Informática, ICMC/USP,
com os dados fornecidos pelo(a) autor(a)

Antonelli, Humberto Lidio


A634m Modelo de teses e dissertações em LaTeX do ICMC /
Humberto Lidio Antonelli; orientadora Renata Pontin
de Mattos Fortes. -- São Carlos, 2017.
79 p.

Tese (Doutorado - Programa de Pós-Graduação em


Ciências de Computação e Matemática Computacional) --
Instituto de Ciências Matemáticas e de Computação,
Universidade de São Paulo, 2017.

1. Modelo. 2. Monografia de qualificação. 3.


Dissertação. 4. Tese. 5. Latex. I. Fortes, Renata
Pontin de Mattos, orient. II. Título.
Luiz Felipe Dolabela Santos

Prediction systems for stock investiments: a comparison


between stocastic models

Monograph submitted to the Institute of Mathematics


and Computer Sciences – ICMC-USP, as part of the
requisites of the MBA in Data Science.
Concentration Area: Computer Science and
Computational Mathematics
Advisor: Prof. Dr. Antonio Castelo Filho

USP – São Carlos


January 2022
Para todas e todos que confiam na ciência como objeto de transformação social e na educação
como sua empunhadura.
AGRADECIMENTOS

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.

Palavras-chave: Aprendizado supervisionado, séries temporais, séries econômicas, bolsa de


valores.
ABSTRACT
DOLABELA, L. F. Prediction systems for stock investiments: a comparison between sto-
castic models. 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.

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

Figura 1 – Exemplo de árvore de decisão. Fonte: Autor . . . . . . . . . . . . . . . . . 29


Figura 2 – Curva da função logística. Fonte: (GONZALEZ, 2018) . . . . . . . . . . . 30
Figura 3 – Algumas bases wavelet mais utilizadas. Fonte: Autor . . . . . . . . . . . . 36
Figura 4 – Função wavelet de Morlet variando-se s e τ. Fonte: Autor . . . . . . . . . . 36
Figura 5 – Banco de Filtros Wavelet. . . . . . . . . . . . . . . . . . . . . . . . . . . . 37
Figura 6 – Fluxo dos dados para execução da Abordagem 1. Fonte: Autor . . . . . . . 39
Figura 7 – Fluxo dos dados para execução da Abordagem 2. Fonte: Autor . . . . . . . 43
Figura 8 – Proporção "Buy"e "Hold"para cada Delta Máximo. Fonte: Autor . . . . . . 47
Figura 9 – Resultados da precisão (Precision), revocação (Recall) e percentual de "Buy"(Buy
Rate) do método K-Vizinhos sem "undersampling". As figuras da linha supe-
rior se referem às métricas na série de treino e na linha inferior às de teste. Da
esquerda para a direita estão as métricas para as decisões diárias, semanais,
mensais, trimestrais e semestrais. Fonte: Autor . . . . . . . . . . . . . . . . 51
Figura 10 – Resultados da precisão (Precision), revocação (Recall) e percentual de "Buy"(Buy
Rate) do método K-Vizinhos com "undersampling". As figuras da linha supe-
rior se referem às métricas na série de treino e na linha inferior às de teste. Da
esquerda para a direita estão as métricas para as decisões diárias, semanais,
mensais, trimestrais e semestrais. Fonte: Autor . . . . . . . . . . . . . . . . 51
Figura 11 – Resultados da precisão (Precision), revocação (Recall) e percentual de "Buy"(Buy
Rate) do método de Florestas Aleatórias sem "undersampling". As figuras da
linha superior se referem às métricas na série de treino e na linha inferior às
de teste. Da esquerda para a direita estão as métricas para as decisões diárias,
semanais, mensais, trimestrais e semestrais. Fonte: Autor . . . . . . . . . . 52
Figura 12 – Resultados da precisão (Precision), revocação (Recall) e percentual de "Buy"(Buy
Rate) do método de Florestas Aleatórias com "undersampling". As figuras da
linha superior se referem às métricas na série de treino e na linha inferior às
de teste. Da esquerda para a direita estão as métricas para as decisões diárias,
semanais, mensais, trimestrais e semestrais. Fonte: Autor . . . . . . . . . . 52
Figura 13 – Resultados da precisão (Precision), revocação (Recall) e percentual de "Buy"(Buy
Rate) do método de Regressão Logística sem "undersampling". O gráfico à
esquerda demonstra as métricas para os dados de treino e à direita de teste.
Fonte: Autor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 53
Figura 14 – Resultados da precisão (Precision), revocação (Recall) e percentual de "Buy"(Buy
Rate) do método de Regressão Logística com "undersampling". O gráfico à
esquerda demonstra as métricas para os dados de treino e à direita de teste.
Fonte: Autor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 53
Figura 15 – Resultados da precisão (Precision), revocação (Recall) e percentual de "Buy"(Buy
Rate) do método de Naïve Bayes sem "undersampling". O gráfico à esquerda
demonstra as métricas para os dados de treino e à direita de teste. Fonte: Autor 54
Figura 16 – Resultados da precisão (Precision), revocação (Recall) e percentual de "Buy"(Buy
Rate) do método de Naïve Bayes com "undersampling". O gráfico à esquerda
demonstra as métricas para os dados de treino e à direita de teste. Fonte: Autor 54
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 . . . . . . . . . . . . . . 55
Figura 18 – Série original PETR4 e predita com um passo adiante pelo método SARI-
MAX, sem filtragem e sem aplicação de variáveis exógenas. Fonte: Autor . 56
LISTA DE TABELAS

Tabela 1 – Os dez maiores valores de correlação de Pearson entre a cotação PETR4 e


demais ações.
Fonte: Autor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47
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 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 48
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 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 48
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 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49
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 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 56
SUMÁRIO

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.

1.1 Bolsa de Valores e o Mercado de Ações

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.2 Estratégias e Técnicas de Investimento


O rendimento obtido em bolsa de valores é bastante inconstante quando se comparado ao
de renda fixa. Apesar disso ser motivo para inibir muitos investidores, a sua inconstância pode
trazer resultados bastante satisfatórios, um dos motivos que ajudam a explicar o número cada vez
maior de investidores na bolsa de valores. Na expectativa de aumento dos lucros com as altas e
baixas da bolsa de valores, foram criadas diversas estratégias de investimento.
É possível dividir as estratégias de investimento em duas: gestão passiva e gestão ativa.
A gestão passiva de ativos compreende na compra de ações ou de fundos com objetivo de
que sua valorização acompanhe algum indicador. No Brasil, é bastante comum investidores e
fundos de investimento montarem carteiras que tentem replicar o Ibovespa. A gestão ativa de
investimentos, por outro lado, pressupõe a tentativa do investidor de superar algum índice. Dessa
forma, o investidor constantemente adquire e vende ativos baseando-se em análises macro e
microeconômicas, de forma a maximizar seus lucros através de descobertas de oportunidades de
investimentos "acima da média"(BERTÃO, 2019).
A estratégia passiva funciona a partir da premissa de que, no longo prazo, o mercado de
ações apresentará, em média, valorização. Duas maneiras de aplicação da estratégia passiva sã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";

2. comprar quotas de fundos de investimento passivos ou indexados (ETFs), que adquirem


ações em proporções próximas ao realizado por determinado índice.

Existem duas vantagens associadas ao modelo de investimento passivo. A primeira é


reduzir o tempo dedicado para acompanhar as flutuações de mercado. A segunda é reduzir os
custos com transações, que podem ser impostos ou taxas para envio de ordens de compra e venda
(FIELD, 2020).
A estratégia ativa, por outro lado, se baseia na premissa de que o mercado é ineficiente
para precificar as ações. Dessa forma, através de estudos de desempenho da empresa, dos
aspectos macroeconômicos que a influenciam e de tendências, é possível encontrar ações cujo
preço realista seja diferente do preço praticado no momento da análise ou da compra. De uma
forma geral, existem duas grandes vertentes de estratégia aplicadas na bolsa que são amplamente
difundidas e facilmente encontradas na internet:

1. análise técnica ou gráfica: utiliza-se de estudos das tendências de preços e de volumes de


negociação para determinar o momento de compra e venda de ações;
1.3. Hipótese do Mercado Eficiente 23

2. análise fundamentalista: utiliza-se do estudo do balanço de empresas e de variáveis macro-


econômicas para projetar o valor de uma ação no futuro;

A possibilidade de obtenção de retornos acima da média do mercado é a vantagem


perseguida pelo investidor quando opta por este tipo de estratégia (BTG, 2017). Com o avanço
da computação, porém, é difícil dividir as estratégias de investimento apenas nas análises técnica
e fundamentalista. Investidores usam de inteligência artificial para prever os movimentos de
preços utilizando-se de informações de redes sociais, buscadores de internet como o google,
informações recém-noticiadas, dentre outros.

1.3 Hipótese do Mercado Eficiente


O uso de análises tais como a técnica e a fundamentalista é bastante controverso. A
Hipótese do Mercado Eficiente, proposto Eugene Fama, diz que o preço de uma ação reflete
toda a informação disponível até aquele momento. Em outras palavras, não há como alcançar
predições melhores sobre o futuro valor de uma ação, já que tudo o que se sabe já está contido
no seu preço atual. Fama sugere que existem três formas possíveis de Eficiência de Mercado a
serem testadas (FAMA, 1991):

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

1.4 Uso de aprendizado de máquina para superar o mer-


cado
Apesar de defendida por diversos acadêmicos, como Malkiel em seu livro "A Random
Walk Down Wall Street", a Hipótese do Mercado Eficiente é constantemente desafiada através
de estratégias ativas de investimentos. Atualmente, existem incontáveis robôs que aplicam
automaticamente na bolsa de valores e é possível contratar serviços deste tipo facilmente na
internet.
Guimarães, Araújo e Barbedo (2011) utilizaram em seu estudo médias móveis e o
indicador de força relativa (IFR) para determinar os momentos de compra e venda de contratos
futuros da Bovespa e atingem 236% de lucro contra queda de 12% dos preços no período de
janeiro de 2008 a fevereiro de 2010. Brock, Lakonishok e LeBaron (1992) realizaram simulação
parecida no mercado estado-unidense e encontraram resultados que não rejeitam a hipótese
de que médias móveis possam ser usadas como forma de aumento de chances de sucesso em
compra e venda de ações. Boainain e Pereira (2009) investigaram a aplicabilidade do modelo
"ombro-cabeça-ombro"para 30 ações listadas na bolsa brasileira e encontraram saldo positivo
em seu uso, ao menos quando excluídas as taxas de corretagem e impostos decorrentes das
transações.
Nos estudos de Khaidem Snehanshu Saha (2016), é aplicado o método Random Forest
com indicadores provenientes da análise técnica para indicar se o preço de uma ação irá aumentar
ou diminuir após determinado período de tempo. Os resultados reportados são bastante anima-
dores, com acurácia e especificidade atingindo mais de 90%. Li Zhijun Yang (2014) criaram
protótipo utilizando modelos supervisionados para selecionar 100 ações dentre 2666 listadas e
compararam os resultados com o indicador S&P500. Em torno de 56% das rodadas, as ações
selecionadas tiveram desempenho superior ao indicador. Os indicadores de análise técnica foram
utilizados como parâmetros de entrada para uma rede neural do tipo perceptron de multicamadas
no trabalho de Al-Shamery e Al-Shamery (2018), encontrando acurácia de 75%.
Os resultados observados nestes estudos indicam que é possível desenvolver algoritmos
especialistas capazes de prever em quais ações investir e em quais momentos compra-las ou
vende-las.
25

CAPÍTULO

2
REVISÃO TEÓRICA

2.1 Análise Técnica


A análise técnica de forma geral utiliza dos "gráficos de velas"(ou "candle charts")
para representar os preços históricos da ação que será utilizada na análise. A partir do gráfico,
são calculados diversos indicadores e traçadas linhas de tendência, dentre os quais podemos
encontrar:

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;

2. média móvel exponencial: dado pela fórmula


2
MMEk,d = (P fd − MMEk,d−1 ) × k+1 + MMEk,d−1 ,
em que k é o número de dias do período selecionado,
MMEk,d é a média móvel exponencial calculada no dia d,
P fd o preço de fechamento do dia d,
O primeiro valor da série, MMEk,k , é igual à média móvel MMk,k ;

3. linha de suporte: é traçada unindo-se mínimas de preços de abertura ou fechamento de


pregões da ação;

4. linha de resistência: é traçada unindo-se as máximas de preços de abertura ou fechamento


de pregões da ação;
26 Capítulo 2. Revisão Teórica

5. momentum: calculado pela diferença entre o preço do último fechamento e do fechamento


de N2 dias anteriores, em que N2 é um valor aleatório definido pelo investidor;
100
6. índice de força relativa (IFR): calculado pela equação IFR = 100 − 1+ U ,
D
em que U é a média dos preços de fechamento dos últimos N3 dias que apresentaram
valorização e D a média daqueles que apresentaram desvalorização;

7. volume de negociações: demonstra o valor financeiro transacionado ao longo do dia.

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.

2.2 Análise Fundamentalista


A análise fundamentalista é baseada no estudo do balanço patrimonial e nas perspectivas
futuras da empresa para propor um valor para a ação, também denominado preço alvo. Em tais
estudos, diversas variáveis são levadas em conta e variam conforme o setor que a empresa está
inserida (DEBASTIANI; RUSSO, 2016), por exemplo:

1. PIB: a depender da taxa de crescimento provisionado do país, haverá maior ou menor


crescimento da empresa;

2. cotação do dólar: o dólar impacta nos preços de importação e exportação, na capacidade


de financiamento por meios externos, assim como na dívida de empresas, cujos valores
são muitas vezes negociados em moedas estrangeiras;

3. desemprego: desemprego acentuado impacta empresas em diferentes níveis devido a sua


relação com o consumo; itens componentes da cesta básica, por exemplo, tendem a sofrer
menos com a queda do emprego, enquanto bens duráveis tendem a ser mais afetados;

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;

5. preço de commodities: empresas como siderúrgicas, mineradoras e petrolíferas têm sua


receita diretamente impactada no preço de comercialização de suas respectivas commodi-
ties;
2.3. Aprendizado Supervisionado 27

6. indicadores de balanço patrimonial: os dados passados do balanço patrimonial de uma


empresa, como seu valor em ativos e passivos, resultados de receita e lucros, entre outros,
demonstram a saúde financeira e podem revelar o quão próspera e bem administrada está a
empresa.

2.3 Aprendizado Supervisionado


Em Machine Learning, um dos objetivos que um algoritmo busca alcançar é predizer
uma saída a partir de dados de entrada. Quando se faz uso de uma massa de dados com pares
conhecidos de entrada e saída, denomina-se que o algoritmo faz parte da classe de aprendizado
supervisionado. Em outras palavras, aprendizado supervisionado é uma classe de algoritmos que
usam pares de entrada e saídas conhecidas para criar um modelo que mais tarde servirá para
predizer saídas a partir de novas entradas.
A saída ou resultado da predição podem ser separadas em variáveis categóricas e numéri-
cas. Quando tratamos de saídas categóricas, os algoritmos são denominados de classificação, já
que suas saídas podem ser consideradas classes de dados. Para saídas numéricas, os algoritmos
são de regressão, pois são realizadas regressões numéricas para encontrar o resultado.
Dentro da classe de aprendizado supervisionado, existem, dentre outros, os seguintes
métodos:

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.

2.3.2 Árvores de Decisão e Florestas Aleatórias


O algoritmo de árvores de decisão é baseado em um formato de perguntas com respostas
binárias, que vão continuamente subdividindo o espaço amostral até que uma condição de parada
seja atingida. Como um exemplo didático, é possível imaginar uma receita para que um médico
determine se o paciente está doente ou saudável, utilizando as seguintes perguntas:

∙ Apresenta de tosse? Sim ou Não

∙ Temperatura corporal maior ou igual a 38o C? Sim ou Não

∙ Apresenta dores no corpo? Sim ou Não

De posse destas três perguntas, é possível montar diferentes sequências e, portanto,


subdividir o espaço de diferentes formas. Cada uma dessas formas pode ser representada por
uma árvore de decisão. Um exemplo possível de construí-la é demonstrada na Figura 1. Seria
possível ir além e refazer as mesmas perguntas em outros níveis da árvore ou até mesmo fazer
novas perguntas como "Temperatura corporal maior ou igual a 37o C?". Cada pergunta é dito nó
da árvore e quando se chega a uma resposta final, é dita folha da árvore. O maior número de nós
necessários a se percorrer até atingir uma folha é dita a profundidade da árvore.
Seria possível realizar perguntas indefinidamente até que cada exemplar contido na
etapa de treinamento do algoritmo seja perfeitamente classificado. Porém, é possível também
determinar um critério de parada diferente e aceitar em alguns casos que um exemplar do
algoritmo de treinamento seja incorretamente classificado. Permitir que pequenos erros sejam
cometidos, em boa parte dos casos, é uma boa estratégia para evitar overfitting. Alguns dos
critérios de parada mais utilizados são a profundidade da árvore, o número de folhas ou o número
mínimo de exemplares do conjunto de treinamento cada folha deve ter (SANTANA, 2020).
O algoritmo de florestas aleatórias é concebido através do uso do que se chama ensemble
de árvores de decisão, que nada mais é que um sistema de votação onde a classificação que
a maioria das árvores de decisão decidir será utilizada como resposta final do algoritmo. No
sistema de florestas aleatórias, o grande diferencial se trata na maneira como as árvores são
montadas. Para evitar overfitting, usualmente são utilizadas até centenas de árvores com pequena
profundidade e com grande variedade nas "perguntas"feitas por cada uma (SANTANA, 2020).
2.3. Aprendizado Supervisionado 29

Figura 1 – Exemplo de árvore de decisão. Fonte: Autor

2.3.3 Naïve Bayes

O algoritmo Naïve Bayes é baseado no teorema de Bayes, sob a premissa de que as


variáveis preditoras são independentes entre si.
P(B|A)×P(A)
O teorema de Bayes pode ser escrito como: P(A|B) = P(B) . Mantendo-se P(B)
constante, pode-se dizer que P(A|B) = K × P(B|A) × P(A).
Considerando o mesmo problema utilizado na árvore de decisão, um médico quer definir
se um paciente está doente ou saudável. As probabilidades do paciente estar doente ou saudável
podem ser estimadas por:
P(doente|tosse,temp, dores) = K × P(doente) × P(tosse,temp, dores|doente)
P(saudavel|tosse,temp, dores) = K × P(saudavel) × P(tosse,temp, dores|saudavel)
A premissa de independência entre as variáveis preditoras reside no fato de que é feita a
aproximação P(tosse,temp, dores|doente) = P(tosse|doente)×P(temp|doente)×P(dores|doente).
Em uma equação mais formal: P(X|y) = ∏ xi |y, em que X é o vetor representando o valor de
cada variável preditora xi e y o valor da variável de saída (BECKER, 2019).
Como "K"representa uma constante, é possível verificar se há maiores chances de
30 Capítulo 2. Revisão Teórica

ser saudável ou doente apenas comparando se P(doente|tosse,temp,dores)


K é maior ou menor que
P(saudavel|tosse,temp,dores)
K . Dessa forma, o algoritmo Naïve Bayes calcula os valores de probabili-
dade de cada uma das saídas baseando-se nas entradas como premissas e retorna como resposta
aquele que retornar o maior valor.

2.3.4 Regressão Logística


O método da regressão logística é um algoritmo aplicável a problemas com apenas duas
ez
classes e tem seu nome derivado da função logística h(z) = 1+e z . Variando-se z, obtem-se um

gráfico de h(z) como o da Figura 2.

Figura 2 – Curva da função logística. Fonte: (GONZALEZ, 2018)

A partir da função logística, é estabelecida a probabilidade de uma instância ser atribuída


βT X
à classe 1 como sendo P(y = 1|X) = e β T X em que X é o vetor de valores associados aos
1+e
atributos da instância e β vetor de parâmetros para realizar uma combinação linear com X.
A probabilidade de pertencer à outra classe, denominada classe 0, é dada por P(y = 0|X) =
1 − P(y = 1|X) = 1β T X
1+e
O objetivo da fase de treinamento do algoritmo é realizar a estimação dos parâmetros
em β . Através de tais parâmetros, o classificador é capaz de determinar a classe da instância
aplicando-se as fórmulas para P(y = 1|X) e P(y = 0|X) e escolhendo a classe cuja probabilidade
for maior (GONZALEZ, 2018).

2.4 Séries Temporais


O uso de algoritmos clássicos de aprendizado supervisionado para uma série do tipo
valores de ações na bolsa podem ter seu desempenho comprometido, uma vez que tratam cada
um dos pares entrada x saída como independentes dos demais. Entretanto, a cotação atual de
uma determinada ação na bolsa depende diretamente do seu valor no dia anterior e nos dias que
os precedem.
2.4. Séries Temporais 31

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.

2.4.1 Modelos ARIMA e SARIMA


O modelo ARIMA (Auto-Regressive Integrated Moving Average), também conhecido
como modelo de Box & Jenkins, foi proposto em 1976 para lidar com problemas de modelagem
e predição de séries temporais. Este modelo tem como premissa que o sinal é estacionário e que
pode ser decomposto em duas partes, a primeira (auto-regressiva) sendo determinística e função
dos seus termos passados, a segunda parte (média móvel) sendo estocástica e também função
dos seus termos passados. Encontrando-se os termos determinísticos e estocásticos da série, é
possível utilizar a parte determinística para prever o seu comportamento futuro.
Para aplicar o modelo, primeiramente é necessário que a série predita seja estacionária.
Caso isso não seja verdade para a série original, faz-se a diferenciação d vezes até ser obtida tal
condição. Uma primeira diferenciação seria:
yt = xt − xt−1
onde:
xt é o valor da série original no tempo t,
yt o novo termo gerado pela diferenciação de x no tempo t.
Caso sejam necessárias duas diferenciações, podemos utilizar uma variável y1,t interme-
diária:
y1,t = xt − xt−1
yt = y1,t − y1,t−1
Satisfeita a condição de estacionariedade para yt , faz-se a decomposição da série resul-
tante. A parte auto-regressiva (AR) pode ser compreendida como a soma ponderada de seus
últimos p elementos e a parte da média móvel (MA) a soma ponderada de seus últimos q erros.
Em notação matemática, o termo ŷt a ser predito é dado por:
p q
ŷt = µ − ∑i=1 φi yt−i − ∑ j=1 θ j et− j
onde,
µ é o valor médio encontrado para a série
p
∑i=1 φi yt−i é a componente determinística dos valores passados da série yt até o p-ésimo
elemento ponderados por φi
q
∑ j=1 θ j et− j é a componente aleatória (também conhecido como erro ou ruído) dos
valores passados da série et até o q-ésimo elemento ponderados por θ j .
32 Capítulo 2. Revisão Teórica

Os hiper-parâmetros p, d e q são responsáveis pelas características AR (auto-regressiva),


I (integrada), MA (médias móveis) do modelo ARIMA. Definir cada um é uma ciência não exata,
mas estes podem ser estimados através da análise de gráficos de autocorrelação e autocorrelação
parcial ou por força bruta, variando-os até encontrar uma função aproximada satisfatória. Já
os parâmetros φi e θ j podem ser estimados através da função de máxima verossimilhança para
f (φ , θ |y), conforme ilustrado por Franco (2009). Existem algoritmos disponíveis em linguagem
Python e R que realizam automaticamente a estimação destes parâmetros, como a função
SARIMAX do pacote statsmodels em Python.
O modelo ARIMA pode ainda ser expandido em SARIMA (Seasonal Auto-Regressive
Integrated Moving Average) para considerar variações sazonais da série temporal. Matematica-
mente, a diferença é que são incluídas observações distantes de m espaços de tempo do valor yt
atual. Podemos escrever o valor predito ŷt como:
p q
ŷt = µ + ∑i=1 φi yt−i − ∑ j=1 θ j et− j − ∑Pk=1 Φk yt−(k×m) − ∑Q
l=1 Θl et−(l×m)

onde,

∑Pk=1 Φk yt−(k×m) é a soma ponderada até a P-ésima componente auto-regressiva sazonal.


A ponderação é determinada pelos elementos Φl e a sazonalidade é m.
Q
∑l=1 Θl et−(l×m) é a soma ponderada até a Q-ésima componente de médias móveis
sazonal. A ponderação é determinada pelos elementos Θl e a sazonalidade é m.
A componente integrada sazonal se torna necessária quando a série tem uma tendência
não estacionária e que varia de forma periódica. Quando isso ocorre, aplica-se D diferenciações
sazonais à série original até eliminar tal efeito. A primeira diferenciação sazonal de sazonalidade
m é dada por:
yt = xt − xt−m
Pode-se fazer recursivamente as D diferenças sazonais, analogamente ao realizado para
o modelo ARIMA, nas diferenças não sazonais.

2.4.1.1 Modelo SARIMAX

Os modelos ARIMA e SARIMA por si só são incapazes de levar em consideração


variáveis exógenas como preditoras. Variáveis exógenas em um modelo de séries temporais
são todas aquelas que não são a própria variável que está sendo predita. Por exemplo, em
uma série temporal de preços da ação PETR3 emitidas pela Petrobras, a variável preço da
ação é considerada endógena, enquanto os preços do brent de petróleo e do dólar podem ser
consideradas variáveis exógenas, pois podem de alguma maneira influenciar no preço da ação
PETR3.
No algoritmo SARIMAX implementado em Python, é possível incluir variáveis exógenas
aos modelos SARIMA. Para isso, a variável endógena é modelada como a soma ponderada de
2.5. Suavização de Séries Temporais 33

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).

2.5 Suavização de Séries Temporais


Assim como os modelos SARIMA, vários métodos de previsão utilizam o conceito de
série temporal como a soma de um sinal de referência com um ruído. A suavização, ou filtragem
do sinal, visa reduzir o ruído presente na série, de forma que seus padrões sejam evidenciados.
Em alguns casos, como o método de Holt-Winters, a suavização é usada para isolar a parte
determinística e assim extrapola-la para o futuro. Em outros, é possível usar a série suavizada
como entrada para outro algoritmo de predição (MORETTIN; TOLOI, 2006).

2.5.1 Suavização Exponencial


A suavização exponencial é obtida calculando-se da série original sua média móvel
exponencial. Esta é obtida a partir da seguinte equação:
x̄t = αxt + (1 − α)x̄t−1 , x¯0 = x0
em que x̄t é a média móvel exponencial de xt e 0 < α < 1 é o parâmetros de suavização.
O nome média móvel exponencial provem do fato de que o efeito de xt sobre a média
calculada decai exponencialmente à taxa 1 − α, como pode ser observado no cálculo abaixo
do efeito de x0 sobre a média no tempo t = 2 (MORETTIN; TOLOI, 2006) (PANDAS TEAM,
2018):

1. x¯0 = x0

2. x̄1 = αx1 + (1 − α)x̄0


x̄1 = αx1 + (1 − α)x0
34 Capítulo 2. Revisão Teórica

3. x̄2 = αx2 + (1 − α)x̄1 = αx2 + (1 − α)(αx1 + (1 − α)x0 )


x̄2 = αx2 + (1 − α)αx1 + (1 − α)2 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.

2.5.2 Transformada Wavelet


2.5.2.1 Motivação

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

A transformada wavelet contínua pode ser matematicamente descrita como:

 
1 t −τ
Z ∞
F(s, τ) = √ f (t)ψ dt (2.3)
s −∞ s

A fórmula 2.3 é razoavelmente parecida com a transformada de Fourier, dada pela


equação 2.2. Porém, a transformada wavelet depende de dois novos parâmetros, s e τ, e a função
senoidal e− jωt é substituída pela wavelet, ψ t−τ

s .

Antes de analisar a ideia por trás da transformada wavelet, é interessante explorar os


termos da equação. A função ψ pode assumir variadas formas, desde que obedeça às seguintes
propriedades:

1. A função tenha média zero: Z ∞


ψ(t) dt = 0 (2.4)
−∞

2. A função tenha energia finita:


Z ∞
|ψ(t)|2 dt = 1 (2.5)
−∞

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

Figura 3 – Algumas bases wavelet mais utilizadas. Fonte: Autor

Figura 4 – Função wavelet de Morlet variando-se s e τ. Fonte: Autor


2.5. Suavização de Séries Temporais 37

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 τ.

2.5.2.3 Decomposição Multiresolução

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.

Figura 5 – Banco de Filtros Wavelet.


39

CAPÍTULO

3
MODELAGEM

3.1 Abordagem 1: Modelos Supervisionados


Como primeiro experimento, foram aplicados modelos supervisionados de aprendizado
para obter decisões de compra e venda de ações. Para isso, aplicou-se o fluxo da Figura 6.

Figura 6 – Fluxo dos dados para execução da Abordagem 1. Fonte: Autor

3.1.1 Obtenção de dados brutos e rotulação das instâncias


Os dados brutos foram obtidos de diversas fontes. O site Economática○ R
foi utilizado
para obter as cotações das ações e de indicadores financeiros das empresas listadas na bolsa
40 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 ≤ τ:

∆Mτ (xt ) = max({xt+T |0 < T ≤ τ}) − xt (3.3)


3.1. Abordagem 1: Modelos Supervisionados 41

Assim, se houver uma valorização dentro do período avaliado acima de um percentual p,


toma-se a decisão de compra. Dessa forma, a equação de decisão pode ser reescrita como:


”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:

1. Sendo xt a representação do valor no tempo t de uma ação, com as cotações no intervalo


de tempo t = 0 até t + T = 10 (valor atual e os valores futuros para as próximas duas
semanas, considerando cotação diária e excluindo os finais de semana):

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

2. O valor atual xt é 11 e o valor máximo alcançado por xt+T entre os tempos T = 1 e T = 10


é 15:
max({xt+T |1 ≤ T ≤ 10}) = 15
Assim, o Delta máximo para um intervalo de τ = 10 é igual a 4
∆M10 (xt ) = 4

3. Considerando uma perspectiva de ganho mínimo de 10% no período, a Decisão é por


"Buy", pois ∆M10 (xt ) > 10% × xt
D10 (xt ) = ”Buy”

3.1.2 Seleção de atributos


Para determinar os indicadores a serem utilizados como atributos de entrada para os
algoritmos de aprendizado, foram escolhidos alguns critérios que variaram a depender do tipo de
indicador utilizado.
Os indicadores com cotação diária foram avaliados conforme a sua correlação de Pearson
com a ação alvo e com os Delta máximo para alguns intervalos τ. Para melhor compreensão,
toma-se o seguinte exemplo de avaliação de correlações:

1. Correlação entre PETR4 e ABEV3


42 Capítulo 3. Modelagem

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).

2. Correlação entre Delta máximo mensal de PETR4 e ABEV3


Sendo ∆M30 (x1 (t)) o Delta máximo mensal de PETR4 calculado pela equação 3.4 e x2 (t)
a cotação de ABEV3, é calculada a correlação de Pearson entre ∆M30 (x1 (t)) e x2 (t).

Os dados amostrados apenas trimestralmente, foram avaliados também conforme a


correlação de Pearson apenas em relação aos Delta Máximo trimestral e semestral devido à sua
menor frequência de amostragem.

3.1.3 Aplicação dos modelos supervisionados e avaliação de resulta-


dos
Os atributos de entrada e os rótulos foram utilizados como base de dados para treina-
mento e teste dos algoritmos de aprendizado supervisionado. A medida utilizada para avaliação
dos resultados dos modelos de aprendizado supervisionado foram a precisão e a revocação e
em seguida comparados com o percentual de rótulos "Buy"real. Dessa forma, é visualmente
perceptível se o algoritmo foi capaz de ter um acerto maior do que uma tentativa aleatória (por
exemplo, predizendo-se todas as instâncias como "Buy").

3.2 Abordagem 2: Modelos de Séries Temporais


O segundo experimento foi utilizando o conceito de séries temporais para predizer os
resultados futuros da ação e com isso tomar a decisão de "Buy"ou "Hold". O fluxo dos dados é
apresentado na Figura 7.
As etapas de obtenção de dados brutos e rotulação de instâncias foram realizadas de
forma análoga à Abordagem 1. A seleção de atributos exógenos foi feita também de forma
análoga à etapa de seleção de atributos dos métodos supervisionados.

3.2.1 Filtragem do sinal, aplicação do modelo, tomada de decisão e


avaliação dos resultados
A série histórica de cotação da ação alvo é também designada sinal. A etapa de filtragem
de sinal corresponde à aplicação de filtros como o descrito no modelo de Wavelet (ver seção
2.5.2). A série resultante após a filtragem é então encaminhada como entrada do algoritmo de
predição de séries temporais.
Em um processo análogo ao que ocorre na rotulação das instâncias, a tomada de decisão
ocorre aplicando-se a equação Decisão (equação 3.4) aos valores preditos pelo modelo de séries
3.2. Abordagem 2: Modelos de Séries Temporais 43

Figura 7 – Fluxo dos dados para execução da Abordagem 2. Fonte: Autor

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.

4.1 Abordagem 1: Modelos Supervisionados

4.1.1 Obtenção de dados brutos


Para o sistema de predição, foi escolhida como base a ação PETR4 devido à sua maior
liquidez e também disponibilidade de dados, visto que sua cotação está disponível desde 1986.
Junto a essa, foram obtidas as cotações diárias de 485 outras ações cujo início e fim das séries
históricas dependem do período em que foram cotadas na bolsa de valores.
Os indicadores macroeconômicos obtidos foram: taxa Selic, IPCA, IGPM, PIB, Índice
de produção industrial brasileiros, PIB, inflação e desemprego dos Estados Unidos e PIB da
China.
Os indicadores fundamentalistas obtidos foram: ativo total, EBITDA, capitalização de
mercado, passivo circulante e patrimônio líquido, retorno sobre o capital circulante e retorno de
lucro (earnings yield). Os indicadores técnicos foram calculados utilizando a cotação e o volume
de negociação da ação PETR4: média móvel de 21 e 200 dias, momentum de 120 dias e IFR de
14 dias.

4.1.2 Rotulação das instâncias


Para realizar a rotulação das instâncias com Delta Máximo e Decisão, foi feito o pré-
processamento dos dados. Em decorrência da indisponibilidade de certos dados para todo o
período obtido para a ação PETR4, as séries foram truncadas no período de 30 de julho de 2007
46 Capítulo 4. Resultados

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%

* D20 (xt ): p = 1, 39%

* D60 (xt ): p = 4, 22%

* D120 (xt ): p = 8, 63%

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 .

4.1.3 Seleção de Atributos


Para selecionar os atributos de entrada para os algoritmos foram verificadas as correlações
entre a ação e os demais indicadores e entre as séries obtidas de Delta Máximo e os demais
indicadores.
Na Tabela 1 são identificadas as 10 maiores correlações entre a série de cotações da
PETR4 e as demais. Inclui-se nesta análise também as correlações de PETR4 com os volumes
de negociação da própria ação, da Bovespa e da Standard and Poor’s.
A alta correlação entre as séries é um indicativo de que tais cotações possam ser usados
como atributos para o modelo classificador. Entretanto, a decisão de compra ou venda independe
do valor atual, mas sim da diferença entre este e o seu valor máximo em algum ponto no futuro.
Desta forma, as correlações destacadas não bastam: é necessário que exista correlação entre as
séries e os valores de Delta Máximo.
4.1. Abordagem 1: Modelos Supervisionados 47

Figura 8 – Proporção "Buy"e "Hold"para cada Delta Máximo. Fonte: Autor

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

Para os valores de Delta Máximo, a Tabela 2 apresenta as respectivas correlações. Nela,


são mostradas as 10 maiores correlações entre os Delta Máximo diário, semanal, mensal, tri-
mestral e semestral. É importante notar como os valores de correlação são bastante inferiores
aos encotrados na Tabela 1. Dessa forma, entende-se que as cotações atuais das ações na bolsa
podem ser bons preditores para os valores atuais da ação que se deseja predizer, porém não são
tão significativos se o objetivo for prever o valor futuro da ação. Além disso, percebe-se que as
ações que tem maior correlação com o Delta Máximo diário não tem necessariamente maior
correlação com o Delta Máximo semanal, mensal e assim por diante. Novamente, isso indica que
as correlações podem ser resultado de um mero acaso.
Na Tabela 3 são apresentadas as correlações entre alguns dos indicadores de análise téc-
1 Onde se lê "Vol"significa o volume de negociações para o índice indicado
48 Capítulo 4. Resultados

∆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.

∆M1 (xt ) ∆M5 (xt ) ∆M20 (xt )


Ação Correlação Ação Correlação Ação Correlação
MM21 0,051385 Vol SPX_Tend200 0,131851 Vol SPX_Tend200 0,187150
PETR4 0,046444 SPX_Tend200 0,121100 Vol PETR4_Tend200 0,153439
Brent_Tend200 0,036595 Vol PETR4_Tend200 0,110117 SPX_Tend200 0,142518
MM200 0,036433 Vol PETR4 0,104371 Dolar_Tend21 0,137368
PETR4_Tend200 0,036028 Vol SPX 0,088315 Dolar 0,134191
Ibov_Tend200 0,035208 Brent_Tend21 0,086349 Vol Ibov_Tend200 0,130461
Vol SPX_Tend21 0,034616 Momentum 0,079731 Brent 0,114960
SPX_Tend200 0,032939 SPX_Tend21 0,076629 Vol PETR4 0,103175
Momentum 0,031027 MM200 0,070249 Vol SPX 0,101620
Vol Ibov_Tend21 0,030677 Vol Ibov_Tend200 0,068630 SPX_Tend21 0,096573
Ibov_Tend21 0,030531 PETR4_Tend21 0,063568 Momentum 0,092623
∆M60 (xt ) ∆M120 (xt )
Ação Correlação Ação Correlação
Dolar 0,245218 Vol SPX_Tend200 0,351371
Vol SPX_Tend200 0,231124 Dolar 0,343586
Brent 0,222636 Brent 0,321005
Vol Ibov_Tend200 0,218224 Vol PETR4_Tend200 0,266173
Vol Brent_Tend200 0,195429 Vol Brent_Tend200 0,253665
Vol PETR4_Tend200 0,192136 Dolar_Tend200 0,250237
Dolar_Tend21 0,166653 SPX 0,244941
SPX 0,164384 Ibov_Tend200 0,236117
Vol PETR4 0,152375 Vol Ibov 0,212723
Vol Ibov 0,139754 Vol PETR4 0,193691
SPX_Tend21 0,138286 PETR4 0,181520

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

2 Onde se lê "Vol"significa o volume de negociações para o índice indicado, "Tend21"e "Tend200"as


tendências considerando os últimos 21 e 200 registros do indicador, "MM200"e "MM21"as médias
4.1. Abordagem 1: Modelos Supervisionados 49

Por fim, a Tabela 4 apresenta indicadores provenientes da análise fundamentalista e suas


correlações em valores absolutos com as séries Delta Máximo. Os indicadores fundamentalistas
selecionados, ao contrário dos indicadores anteriores, são atualizados mensalmente ou trimestral-
mente. Por essa razão, foram analisadas somente a correlação desses indicadores com os Delta
Máximo trimestral e semestral.

∆M60 (xt ) ∆M120 (xt )


Ação Correlação Ação Correlação
EUA_Inflação 0,309202 EUA_Inflação 0,464769
IPCA 0,308876 PL 0,330924
PL 0,242442 MKTCAP 0,254721
MKTCAP 0,182622 IPCA 0,237186
SELIC 0,179134 EUA_Desemprego 0,195049
IndProd 0,097130 SELIC 0,156233
EUA_PIB 0,093472 IndProd 0,153117
EBIT 0,089757 EUA_PIB 0,097565
EUA_Desemprego 0,084515 EBIT 0,076357
PIB 0,078647 IGPM 0,065155
China_PIB 0,059713 AT 0,061814

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

A partir dos resultados de correlação, foram selecionadas as variáveis com 10 maiores


correlações para cada Delta Máximo para cada tipo de análise. Como exemplo, para ∆M1 (xt ),
foram selecionadas as 10 variáveis que aparecem na primeira coluna da Tabela 2 e as 10 que
aparecem na primeira coluna da Tabela 3, enquanto que para ∆M120 (xt ), foram selecionadas as
10 das últimas colunas das Tabelas 2 e 3 e as 10 da segunda coluna da Tabela 4.

4.1.4 Aplicação de modelo supervisionado


Para predizer os momentos de compra e venda, foram aplicados os modelos supervisio-
nados K-Vizinhos, Florestas Aleatórias, Naïve Bayes e Regressão Logística.
Para inserção dos dados nos modelos, os dados foram separados entre treino e teste
na proporção 80% para treino e 20% para teste. Devido à correlação temporal entre os dados,
manteve-se os dados de teste como os últimos 20% da série.
Devido ao desbalanceamento dos dados representados na Figura 8, os algoritmos foram
treinados usando duas bases de dados. A primeira, sem realizar qualquer ajuste na base, e a
segunda, realizando operação de "undersampling".

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

4.1.5 Avaliação dos Resultados


4.1.5.1 K-Vizinhos

O algoritmo K-Vizinhos foi simulado para K = 1, 3, 5, 7, 9, 11 e 13, em que K é o número


de pontos utilizados como vizinhos pelo algoritmo. Os resultados das predições em treino e teste
são apresentados nas Figuras 9 e 10.
Apesar de atingir níveis altos de precisão, ficando acima de 90% no teste para D120 (xt ),
é possível observar que os resultados não são expressivamente maiores do que a proporção de
"Buy"existente.
De forma quase contraditória, nas decisões diárias, onde há a menor precisão, é que o
algoritmo aparenta demonstrar uma capacidade de assertividade maior que uma decisão aleatória,
visto que sua precisão foi de 54% contra 50% de proporção de "Buy"dos dados de entrada para
K igual a 13. Para verificar a significância estatística do preditor, foi estabelecida a seguinte
hipótese nula: um decisor aleatório, com mesma probabilidade de decidir por "Buy"do que o
modelo KNN com K igual a 13, é capaz de obter resultados tão bons ou melhores do que o
modelo KNN com K igual a 13. A hipótese alternativa: o modelo KNN com K igual a 13 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 KNN com K igual a 13.
Em apenas 2,98% 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%.
Pela comparação entre os gráficos, é possível reparar que a operação de "undersam-
pling"não produziu efeitos muito significativos na precisão de predição na série de teste. Quanto
à revocação na série de teste, percebe-se valores bem próximos ou iguais a 100% nas decisões
semanal, mensal, trimestral e anual. Em alguns casos, a revocação foi reduzida com o algoritmo
sendo treinado após a operação de "undersampling". Isso ocorre porque sem o balanceamento dos
dados o algoritmo predisse todas (ou quase todas) as saídas como "Buy"e a após o balanceamento
ele foi capaz de predizer saídas como "Hold"com maior frequência. O fato de a precisão não ter
mudado significativamente mesmo com a revocação sendo bastante afetada é um sinal de que o
algoritmo não foi capaz de acertar melhor do que uma tentativa aleatória.

4.1.5.2 Florestas Aleatórias

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

Figura 9 – Resultados da precisão (Precision), revocação (Recall) e percentual de "Buy"(Buy Rate) do


método K-Vizinhos sem "undersampling". As figuras da linha superior se referem às métricas
na série de treino e na linha inferior às de teste. Da esquerda para a direita estão as métricas
para as decisões diárias, semanais, mensais, trimestrais e semestrais. Fonte: Autor

Figura 10 – Resultados da precisão (Precision), revocação (Recall) e percentual de "Buy"(Buy Rate) do


método K-Vizinhos com "undersampling". As figuras da linha superior se referem às métricas
na série de treino e na linha inferior às de teste. Da esquerda para a direita estão as métricas
para as decisões diárias, semanais, mensais, trimestrais e semestrais. Fonte: Autor

4.1.5.3 Regressão Logística e Naïve Bayes

Os resultados apresentados pelos algoritmos de Regressão Logística e Naïve Bayes são


apresentados pelas Figuras 13, 14, 15 e 16.
No caso da Regressão Logística, os resultados baixos de revocação indicam que o algo-
ritmo teve maior capacidade de predizer saídas "Hold"e isso ocorreu nas fases de treinamento e
teste. Entretanto, novamente não foi observada melhora na precisão, indicando ainda comporta-
52 Capítulo 4. Resultados

Figura 11 – Resultados da precisão (Precision), revocação (Recall) e percentual de "Buy"(Buy Rate) do


método de Florestas Aleatórias sem "undersampling". As figuras da linha superior se referem
às métricas na série de treino e na linha inferior às de teste. Da esquerda para a direita estão
as métricas para as decisões diárias, semanais, mensais, trimestrais e semestrais. Fonte: Autor

Figura 12 – Resultados da precisão (Precision), revocação (Recall) e percentual de "Buy"(Buy Rate) do


método de Florestas Aleatórias com "undersampling". As figuras da linha superior se referem
às métricas na série de treino e na linha inferior às de teste. Da esquerda para a direita estão
as métricas para as decisões diárias, semanais, mensais, trimestrais e semestrais. Fonte: Autor

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 13 – Resultados da precisão (Precision), revocação (Recall) e percentual de "Buy"(Buy Rate) do


método de Regressão Logística sem "undersampling". O gráfico à esquerda demonstra as
métricas para os dados de treino e à direita de teste. Fonte: Autor

Figura 14 – Resultados da precisão (Precision), revocação (Recall) e percentual de "Buy"(Buy Rate) do


método de Regressão Logística com "undersampling". O gráfico à esquerda demonstra as
métricas para os dados de treino e à direita de teste. Fonte: Autor

4.2 Abordagem 2: Modelos de Séries Temporais


Na abordagem por séries temporais, as etapas de obtenção de dados e rotulação de
instâncias foram as mesmas aplicadas à abordagem 1. A forma de selecionar os atributos
exógenos também repetiu a forma realizada para a etapa de "Seleção de Atributos"descrito na
Seção 4.1.3.

4.2.1 Filtragem do Sinal


Como entrada para os modelos de predição de séries temporais, foram testadas três
diferentes formas. A primeira, o sinal de entrada foi a própria série temporal da cotação de
PETR4, sem haver nenhum tipo de tratamento adicional aos já realizados nas etapas de obtenção
de dados. A segunda forma se refere à filtragem do sinal de PETR4 via suavização exponencial.
54 Capítulo 4. Resultados

Figura 15 – Resultados da precisão (Precision), revocação (Recall) e percentual de "Buy"(Buy Rate) do


método de Naïve Bayes sem "undersampling". O gráfico à esquerda demonstra as métricas
para os dados de treino e à direita de teste. Fonte: Autor

Figura 16 – Resultados da precisão (Precision), revocação (Recall) e percentual de "Buy"(Buy Rate) do


método de Naïve Bayes com "undersampling". O gráfico à esquerda demonstra as métricas
para os dados de treino e à direita de teste. Fonte: Autor

O resultado dessa filtragem é encaminhada ao algoritmo de predição temporal. Já na terceira, a


série temporal é filtrada via filtros wavelet.
A Figura 17 apresenta o sinal de PETR4 e a saída através dos filtros de suavização
exponencial e wavelet. Os resultados dos filtros tem resultados transitórios mais atenuados,
sofrendo menos com as oscilações de curto prazo. Importante destacar a divergência entre a série
original e o obtido pelo filtro wavelet nas extremidades (início e fim). Conforme apresentado
no artigo de Xia et al. (2007), os filtros baseados em wavelet apresentam tal dificuldade de
convergência nas extremidades. Xia et Al. buscam formas de atenuar o erro, porém o uso das
mitigações utilizadas demonstram por si só a limitação do método e não foram escopo deste
trabalho a sua exploração.
4.2. Abordagem 2: Modelos de Séries Temporais 55

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

4.2.1.1 Aplicação do Modelo de Séries Temporais

Para determinar os modelos adequados de predição via SARIMAX, o processo foi


dividido em duas etapas. A primeira, a avaliação da estacionariedade das séries de entrada, através
do teste de Dickey-Fuller aumentado (ADF), determinando-se o valor do termo derivativo. A
segunda, para determinar os termos auto-regressivos e de médias móveis, utilizou-se o algoritmo
auto_arima do pacote pmdarima implementado em Python.
O algoritmo SARIMAX recebeu como entrada a cada passo de tempo as últimas 60
amostras, o que equivale aproximadamente aos últimos três meses, visto que o uso da base
completa de dados poderia mascarar os dados mais recentes, que possivelmente conteriam a
informação mais precisa do comportamento da ação naquele instante de tempo.
A Figura 18 apresenta os dados originais e predito pelo método SARIMAX sem aplicação
de filtro na entrada e sem uso de variáveis exógenas. A curva predita aparenta ser muito próxima
à original. Porém, verifica-se que os resultados são na realidade iguais aos originais defasados em
um dia. Ou seja, a predição para o dia seguinte é igual ao dia atual do algoritmo. Isso porque no
modelo original, o resultado ótimo para os parâmetros ARIMA foram zero para as componentes
auto-regressiva e de médias móveis.
56 Capítulo 4. Resultados

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

4.2.1.2 Tomada de Decisão

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%).

4.2.1.3 Avaliação dos Resultados

Os resultados de precisão e revocação para os modelos SARIMAX adotados são apresen-


tados na Tabela 5. Nos exemplos com dados sem passagem por filtros ou mesmo com a passagem
por filtro exponencial (precisão iguais a 51% e 50%, respectivamente), os valores de precisão
ficaram muito próximos à proporção de 50,7%, que é a proporção de "Buy"que aparecem na
série de teste. Desta forma, eles não foram melhores do que uma decisão puramente aleatória.
Em contrapartida, após a aplicação de filtro Wavelet, o método apresentou precisão de 56%, o
maior dentre os decisores diários.

Método Precisão Revocação


PETR4 0.51 0.45
Exponencial 0.50 0.44
Wavelet 0.56 0.46
PETR4 - Com Exog 0.46 0.42
Exponencial - Com Exog 0.49 0.44
Wavelet - Com Exog 0.54 0.46

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

aleatoriamente entre comprar ou não a ação.

5.1 Limitações e Trabalhos Futuros


As decisões de compra e venda deste trabalho não levaram em conta o módulo das
variações percentuais, mas tão somente limiares de tomada de decisão. Desta forma, uma das
propostas de continuação deste trabalho reside na aplicação das decisões em um emulador de
compra e venda para verificar se há ganhos reais sobre uma decisão de compra aleatória. Isso
seria ainda mais importante para testar se o decisor SARIMAX com filtro wavelet é realmente
capaz de alcançar resultados financeiros acima da média.
61

REFERÊNCIAS

AL-SHAMERY, E.; AL-SHAMERY, A. A.-H. Enhancing prediction of nasdaq stock market


based on technical indicators. Journal of Engineering and Applied Sciences, v. 13, n. 5 Sl, p.
4630 – 4636, 2018. Citado na página 24.
ANDRADE, J. 2021. Disponível em: <https://einvestidor.estadao.com.br/mercado/
volume-financeiro-b3-queda>. Acesso em: 02/07/2021. Citado na página 21.
B3. 2021. Disponível em: <http://www.b3.com.br/pt_br/market-data-e-indices/indices/
indices-amplos/ibovespa.htm>. Acesso em: 03/07/2021. Citado na página 21.
BCB. 2021. Disponível em: <https://www3.bcb.gov.br/sgspub/localizarseries/localizarSeries.do?
method=prepararTelaLocalizarSeries>. Acesso em: 30/11/2021. Citado na página 40.
BECKER, L. Algoritmo de Classificação Naive Bayes. 2019. Disponível em: <https://www.
organicadigital.com/blog/algoritmo-de-classificacao-naive-bayes/>. Acesso em: 20/12/2021.
Citado na página 29.
BERTÃO, N. 2019. Disponível em: <https://valorinveste.globo.com/produtos/fundos/noticia/
2019/08/21/gestao-ativa-x-gestao-passiva-o-que-sao-o-que-comem-e-como-vivem.ghtml>.
Acesso em: 04/07/2021. Citado na página 22.
BOAINAIN, P. G.; PEREIRA, P. L. V. “ombro-cabeça-ombro”: Testando a lucratividade do pa-
drão gráfico de análise técnica no mercado de ações brasileiro. Revista Brasileira de Finanças,
v. 7, n. 3, p. 265–303, 2009. Citado nas páginas 24 e 26.
BROCK, W.; LAKONISHOK, J.; LEBARON, B. Simple technical trading rules and the stochas-
tic properties of stock returns. The Journal of Finance, v. 47, n. 5, p. 1731–1764, 1992. Citado
na página 24.
BTG. 2017. Disponível em: <https://www.btgpactualdigital.com/blog/investimentos/
gestao-ativa-e-passiva>. Acesso em: 05/07/2021. Citado na página 23.
DEBASTIANI, C. A.; RUSSO, F. A. Avaliando Empresas, Investindo em Ações. São Paulo:
Novatec, 2016. Citado na página 26.
FAMA, E. F. Efficient capital markets: Ii. The Journal of Finance, v. 46, n. 5, p. 1575–1617,
1991. Citado na página 23.
FED. 2021. Disponível em: <https://fred.stlouisfed.org>. Acesso em: 30/11/2021. Citado na
página 40.
FIELD, A. 2020. Disponível em: <https://www.businessinsider.com/passive-investing>. Acesso
em: 04/07/2021. Citado na página 22.
FRANCO, G. C. Apostila sobre modelagem Box and Jenkins. 2009. Disponível em: <ftp://
est.ufmg.br/pub/glaura/Met%20Previsao/Modelagem%20Box%20and%20Jenkins.pdf>. Acesso
em: 15/09/2021. Citado na página 32.
62 Referências

GOEKING, W. 2021. Disponível em: <https://valorinveste.globo.


com/mercados/renda-variavel/bolsas-e-indices/noticia/2021/01/15/
apenas-3percent-dos-brasileiros-investiram-em-acoes-em-2020-e-media-aplicada-caiu-31percent.
ghtml>. Acesso em: 02/07/2021. Citado na página 21.

GONZALEZ, L. de A. Regressão Logística e suas Aplicações. Monografia (Graduação) —


Universidade Federal do Maranhão, São Luís, 2018. Citado nas páginas 15 e 30.

GUIMARãES, D. P. G.; ARAúJO, G. S.; BARBEDO, C. H. da S. É possível bater o ibovespa com


operações de análise técnica no mercado futuro? Revista de Administração Contemporânea,
v. 15, n. 5, p. 918 – 930, 09 2011. Citado na página 24.

HYNDMAN, R. J. The ARIMAX model muddle. 2010. Disponível em: <https://robjhyndman.


com/hyndsight/arimax/>. Acesso em: 21/09/2021. Citado na página 33.

KHAIDEM SNEHANSHU SAHA, S. R. D. L. Predicting the direction of stock market pricesu-


sing random forest. Applied Mathematical Finance, 2016. Citado na página 24.

KOERICH, A. L. Aprendizagem de Máquina - Aprendizagem Baseada em Instâncias.


2021. Disponível em: <http://www.eletrica.ufpr.br/ufpr2/professor/36/TE808/6-kNN-AM.pdf>.
Acesso em: 20/12/2021. Citado na página 27.

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.

MALLAT, S. G. A theory for multiresolution signal decomposition: The wavelet representation.


IEEE Transactions, v. 11, n. 7, p. 674–693, 1989. Citado na página 37.

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.

PANDAS TEAM. pandas.DataFrame.ewm. 2018. Disponível em: <https://pandas.pydata.org/


pandas-docs/stable/reference/api/pandas.DataFrame.ewm.html>. Acesso em: 22/09/2021. Ci-
tado na página 33.

RUEDA, D. A. A.; ESTRADA, J. H. U. ¿Realidad o sofisma? poniendo a prueba el análisis


técnico en las acciones colombianas. Cuadernos de Administración, v. 22, n. 38, p. 188–217,
2009. Citado na página 26.

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.

SANTANA, G. F. O Poder de Previsão da Análise Técnica. Monografia (Pós-graduação) —


FGV/EAESP, São Paulo, 1997. Citado na página 26.
Referências 63

SOARES, A. da S. Predição de Séries Temporais Econômicas por Meio de Redes Neurais


Artificiais e Transformada de Wavelet: Combinando Modelo Técnico e Fundamentalista.
Monografia (Pós-graduação) — USP São Carlos, São Paulo, 2008. Citado na página 35.

SOUZA, C. J. G. C. Maurício Corrêa de. Os impactos da introduÇÃo do home broker no mercado


de valores mobiliÁrios brasileiro. In: V CONGRESSO NACIONAL DE EXCELêNCIA EM
GESTãO, 5. [S.l.], 2009. Citado na página 21.

SOUZA, F. de. Transformadas de Fourier. 2021. Disponível em: <http://webx.ubi.pt/~felippe/


texts2/analise_sinais_ppt08p.pdf>. Acesso em: 22/09/2021. Citado na página 34.

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

Você também pode gostar