Você está na página 1de 51

UNIVERSIDADE FEDERAL DO RIO GRANDE DO NORTE

CENTRO DE CIÊNCIAS EXATAS E DA TERRA


CURSO DE ESTATÍSTICA

AUGUSTO SANTANA VERAS DE MEDEIROS

ESTUDO SOBRE O USO DE ANÁLISE TÉCNICA E XGBOOST EM OPERAÇÕES


DE DAY-TRADE

NATAL/RN
2021
AUGUSTO SANTANA VERAS DE MEDEIROS

ESTUDO SOBRE O USO DE ANÁLISE TÉCNICA E XGBOOST EM OPERAÇÕES DE


DAY-TRADE

Monografia apresentada ao curso de graduação


em Estatística, da Universidade Federal do Rio
Grande do Norte, como requisito parcial à
obtenção do título de Bacharel em Estatística.

Orientador: Prof. Dr. Marcus Alexandre Nunes

NATAL/RN
2021
RESUMO

O objetivo deste trabalho é avaliar a capacidade de indicadores da Análise Técnica preverem o


comportamento do preço do minicontrato de Dólar Comercial Futuro e do minicontrato do
Ibovespa, a partir do uso do XGBoost como modelo de classificação utilizado em operações
day-trade. Neste contexto, foram utilizadas variáveis preditoras derivadas das Médias Móveis
Aritméticas, Médias Móveis Exponenciais, Moving Average Convergence-Divergence e do
Estocástico. Os resultados destas variáveis em um tempo 𝑡 foram utilizados para indicar se o
movimento dos preços dos ativos no tempo 𝑡 + 1 foi de Alta (valorização) ou Baixa
(desvalorização). Os modelos de classificação são construídos a partir do XGBoost e avaliados
através da Acurácia e do resultado financeiro simulado. O melhor modelo para o minicontrato
de Dólar Comercial Futuro apresentou Acurácia de 50,1% e foi capaz de gerar lucro de
R$ 11.940, ao mesmo tempo em que o modelo utilizado como seu benchmark gerou prejuízo
de R$ 15.135. A Acurácia do melhor modelo para o minicontrato do Ibovespa foi 51,8% e seu
resultado financeiro foi um lucro de R$ 10.627, apurado no mesmo período em que o modelo
utilizado como seu benchmark gerou prejuízo de R$ 8.769.

Palavras-chave: Análise Técnica. Aprendizagem de Máquina. XGBoost. Mini Dólar Futuro.


Mini Ibovespa. Day-Trade
ABSTRACT

The objective of this work is to evaluate the effects of Technical Analysis indicators to predict
the price of the mini futures Dollar and the mini Ibovespa futures contracts, using XGBoost as
a classification model in day-trade operations. In this context, predictor variables derived from
Arithmetic Moving Averages, Exponential Moving Averages, Moving Average Convergence-
Divergence, and Stochastic were used. The results of these variables at time 𝑡 were used to
indicate whether the movement of asset prices at time 𝑡 + 1 was High (appreciation) or Low
(devaluation). The classification models are built from XGBoost and evaluated through
Accuracy and the simulated financial result. The best model for the mini futures Dollar
presented an Accuracy of 50.1% and was able to generate a profit of R$ 11,940, while the model
used as its benchmark generated a loss of R$ 15.135. The accuracy of the best model for the
mini Ibovespa was 51.8% and its financial result was a profit of R$ 10,627, calculated in the
same period in which the model used as its benchmark generated a loss of R$ 8.769.

Keywords: Technical Analysis. Machine Learning. XGBoost. Mini Dollar Future. Mini
Ibovespa. Day-Trade.
SUMÁRIO

1 INTRODUÇÃO ..................................................................................................................... 7

2 REVISÃO DE LITERATURA ........................................................................................... 10

3 METODOLOGIA................................................................................................................ 13

3.1 Base de Dados ....................................................................................................... 13

3.2 Indicadores Técnicos............................................................................................. 16

3.2.1 Médias Móveis .................................................................................................... 17

3.2.2 Estocástico .......................................................................................................... 20

3.2.3 Visão Geral dos Indicadores.................................................................................. 21

3.3 Tratamento dos Dados .......................................................................................... 22

3.4 XGBoost ............................................................................................................... 24

3.5 Critérios de Avaliação de Desempenho .................................................................. 26

3.5.1 Poder de Classificação.......................................................................................... 27

3.5.2 Resultado Financeiro ............................................................................................ 28

4 RESULTADOS .................................................................................................................... 31

4.1 Minicontrato de Dólar Comercial (WDO) ............................................................. 31

4.2 Minicontrato do Ibovespa (WIN) .......................................................................... 35

5 CONSIDERAÇÕES FINAIS .............................................................................................. 38

REFERÊNCIAS ..................................................................................................................... 40
7

1 INTRODUÇÃO

No fim do Século XIX, Charles Dow e Edward Jones fundaram a Dow, Jones &
Company e o The Wall Street Journal. Na ocasião, Dow começou a compilar médias de preços
de ações negociadas na bolsa de Nova York, o que possibilitou aos investidores debaterem o
“mercado” na expectativa de realizarem previsões. Com ele nasceu a profissão de “estatístico”
da bolsa de valores, aquilo que hoje se conhece como analista de mercado. A apuração destas
médias resultou na criação do índice Dow-Jones, um dos principais do mercado de ações
americano até hoje (FOX, 2010; KIRKPATRICK; DAHLQUIST, 2011; RHEA, 1932).
Entre 1899 e 1902, Dow compartilhou em editoriais de primeira página de seu jornal
toda a experiência adquirida em mais de uma década de coleta e análise destas médias. Seu
sucessor como editor do jornal, William Hamilton, organizou suas ideias e as publicou na forma
de princípios, estabelecendo o que hoje é conhecido como Teoria Dow. É consenso entre
teóricos e praticantes que a Teoria Dow é a origem daquilo que se conhece atualmente como
Análise Técnica, haja vista a convergência de parte de seus princípios (FOX, 2010;
EDWARDS; MAGEE, 2003, MURPHY, 1999).
Através do estudo de registros gráficos e de indicadores matemático-estatísticos, a
Análise Técnica busca proporcionar condições para projetar o futuro dos preços (NORONHA,
2006). Esta proposição parte da premissa de que tudo o que interfere no mercado – seja no
passado recente ou distante, seja em relação às expectativas acerca do futuro – está expresso
nos preços resultantes do embate entre as forças de oferta e demanda. A evolução histórica deste
embate dá origem às tendências, as quais, por princípio, evoluem em padrões que se repetem
ao longo do tempo. Estes pressupostos constituem a base e são pontos de congruência entre a
Análise Técnica e a Teoria Dow (KIRKPATRICK; DAHLQUIST, 2011).
No início do Século XX, os analistas técnicos recorriam aos padrões gráficos na busca
de identificar tendências e escolher as melhores estratégias de ação. A partir dos anos 1950, foi
intensificada a aplicação da matemática e estatística para descrever a evolução do mercado,
dando início ao uso de indicadores técnicos. No fim dos anos 1970, com a popularização dos
computadores, seu uso e estudo foram ampliados. Os indicadores técnicos ajudam na
identificação de tendências e fornecem sinais objetivos para atuação do investidor no mercado.
Há que se ressaltar, contudo, que em muitas situações eles se contradizem (KIRKPATRICK;
DAHLQUIST, 2011, EDWARDS; MAGEE, 2003, MURPHY, 1999, NORONHA, 2006).
8

Este trabalho recorrerá aos indicadores de Análise Técnica em sua estratégia empírica,
uma vez que serão construídas variáveis preditoras a partir de diferentes formulações e
periodicidades de Médias Móveis e do Estocástico.
Em tese, os resultados gerados pelos indicadores em um tempo 𝑡 indicam o
comportamento do mercado no tempo 𝑡 + 1. Portanto, através dos indicadores técnicos o
investidor recebe indícios se o preço de um ativo financeiro tende a verificar alta ou baixa. É
justamente este o mote que conduz ao problema de pesquisa desta investigação, assim posto: é
possível construir um modelo de classificação baseado em indicadores técnicos para ajudar
no posicionamento do investidor no mercado de ativos financeiros?
Quanto à tarefa de classificação, este trabalho utilizará o Extreme Gradiente Boosting
(XGBoost) para construir um modelo cujas variáveis de entrada são derivadas de indicadores
técnicos e a variável dependente é o sentido da variação do preço de um ativo financeiro, aqui
tratado como uma variável categorizada.
O XGBoost é um modelo ensemble baseado em árvores de decisão agregadas através
dos métodos bagging e boosting. Seu principal fator de sucesso consiste no fato de ser
implementado por meio de um algoritmo otimizado, que o torna aplicável a grandes quantidades
de dados e faz com que este seja um modelo mais do que dez vezes mais rápido que outras
soluções alternativas. Isto fez com que, por exemplo, 17 de 29 soluções vencedoras em
competições no Kaggle1 em 2015 e 10 dos melhores modelos adotados na KDDCup2 também
em 2015 tenham recorrido ao XGBoost (CHEN; GUESTRIN, 2016).
Os ativos financeiros que serão analisados são os contratos futuros mini de Dólar
Comercial e do Ibovespa. No primeiro semestre de 2021, o mini Ibovespa foi o segundo
contrato derivativo de índice mais negociado no mundo, contribuindo para que o Brasil tenha
ocupado a segunda colocação mundial em volume de negócios neste mercado (FUTURES
INDUSTRY ASSOCIATION, 2021). Muitos destes negócios foram day-trades3, realizados,
inclusive, por pessoas que buscam este ramo de investimento como forma de sobrevivência. No
entanto, considerando todos aqueles que começaram a negociar com mini Ibovespa entre 2013
e 2015, somente 7,9% o fizeram por mais de 300 dias. Destes, apenas 1,1% obtiveram lucro de
forma consistente (CHAGUE et al., 2020), o que dá a medida do grau de dificuldade que
envolve desenvolver um modelo de negociação de qualidade para este mercado.

1 Comunidade online de cientistas de dados e praticantes de aprendizado de máquina voltada à


resolução de problemas baseados em dados públicos ou competições utilizando dados privados.
2 Conferência anual de data mining, ocasião na qual uma competição é realizada.
3 Operações em que os investidores iniciam e encerram suas operações em um mesmo dia.
9

Diante do que foi exposto, o objetivo deste trabalho consiste em avaliar o potencial de
indicadores da Análise Técnica preverem o comportamento do preço do minicontrato de Dólar
Comercial Futuro e do minicontrato do Ibovespa, a partir do uso do XGBoost como modelo de
classificação utilizado em operações day-trade. O que se busca aqui é realizar uma investigação
científica para determinar se os sinais dados por um conjunto de indicadores técnicos no
presente, de forma objetiva, dizem algo sobre a direção em que se moverá o preço de ativos
financeiros um passo à frente, ou seja, se seus preços tendem a subir ou cair.
Esta pesquisa se justifica na medida em que contribui para ampliar o debate acadêmico
acerca da Análise Técnica, estratégia de análise de ativos financeiros de origem secular e com
ampla inserção entre os analistas de mercado. Sua construção traz como inovação o emprego
do XGBoost, algoritmo de aprendizado de máquina promissor, mas de uso recente no meio
acadêmico. A expectativa é que os resultados desta pesquisa possam contribuir para definição
de estratégias operacionais utilizadas na realização de investimentos não só com minicontratos
futuros, mas também com outros ativos.
Além desta introdução, na próxima seção será realizada uma revisão bibliográfica
sobre Análise Técnica. Na sequência será detalhada a metodologia empregada na condução da
estratégia empírica desenhada para responder ao objetivo proposto. Os resultados obtidos serão
expostos e analisados em seguida, antecedendo a seção de encerramento, na qual serão feitas
as considerações finais.
10

2 REVISÃO DE LITERATURA

Cowles 3rd (1932) analisou previsões de Willian Hamilton em seus editoriais no The
Wall Street Journal, realizadas entre 1903 e 1929 com base na Teoria Dow. Sua conclusão foi
que investimentos baseados nestas previsões teriam rendido um retorno anual médio de 12%
para ações de indústrias e de 5,7% para ações de ferrovias. No entanto, investimentos feitos ao
longo do mesmo período, baseados apenas nas composições das carteiras teóricas dos índices
Dow Jones das indústrias e das ferrovias, teriam rendido retornos médios anuais de 15,5% e
7,7%, respectivamente. Ao longo deste mesmo período, de noventa indicações de alterações no
comportamento do mercado, Hamilton acertou metade das vezes e errou na outra metade.
Com estes resultados, Cowles 3rd (1932) foi um dos responsáveis por iniciar o debate
acadêmico acerca da existência de conteúdo informacional no histórico de preços. De acordo
com Fama (1965), de um lado desta controvérsia estavam os analistas e negociadores adeptos
da Análise Técnica, cuja ação se pautava no pressuposto de que a história se repetia na forma
de padrões. Do outro lado estavam os acadêmicos, na defesa de que os preços dos ativos
evoluíam em um movimento aleatório e que seu histórico em nada podia contribuir para a
realização de previsões. Esta última, inclusive, era opinião do próprio Fama, cujo trabalho
desenvolvido na área lhe rendeu o Prêmio Nobel de Economia em 2013.
Baseado em análise de correlação serial, na realização do teste run e em regras de filtro
de Alexander, Fama (1965) encontrou evidências empíricas de que os preços se movem de
forma independente, o que faz com que o passeio aleatório seja uma forma adequada para
descrever a realidade. Com isso, a visão de que os preços dos ativos financeiros de fato se
moviam em um passeio aleatório prevaleceu no meio acadêmico e fez com que poucos estudos
sobre a Análise Técnica fossem realizados, até que trabalhos como de Lo e MacKinlay (1988)
e Brock et al. (1992) foram publicados e começaram a mudar este cenário.
Em sua pesquisa, Lo e MacKinlay (1988) analisaram a volatilidade no histórico de
preços de ativos financeiros por meio do teste de especificação de Hausman, o que os levou a
rejeitar a hipótese do passeio aleatório. Por sua vez, Brock et al. (1992) analisaram dados reais
relativos ao Dow Jones no período de 1897 a 1986 e dados simulados pela técnica do bootstrap
relativos à mesma série. Suas conclusões apontaram pela validade da Análise Técnica, a partir
das análises comparativas dos retornos gerados para as diferentes séries, através do uso de
Médias Móveis e de regras operacionais baseadas em rompimentos de tendências.
Dois levantamentos bibliográficos refletem a mudança de percepção no meio
acadêmico acerca do tema Análise Técnica. Park e Irwin (2007) analisaram 95 estudos
11

publicados entre 1988 e 2004, do quais 56 encontraram resultados favoráveis à Análise Técnica,
20 indicaram o contrário e 19 encontraram resultados mistos. Já Nazário et al. (2017) analisaram
85 estudos publicados entre 1959 e 2014, sobre os quais apontaram que 79 apresentaram
resultados que reforçavam a validade da Análise Técnica.
Quanto aos estudos realizados para o mercado brasileiro, prevalecem aqueles que
testaram a capacidade preditiva de indicadores técnicos (SAFFI, 2003; BAPTISTA; PEREIRA,
2008; VIDOTTO et al., 2009; GUIMARÃES et al, 2011), mas há também quem tenha testado
o conteúdo informacional de padrões gráficos (BOANAIN; PEREIRA, 2009) e a relação entre
volume e preço (SANVICENTI, 2016). Algumas análises foram realizadas a partir de dados de
ações de empresas negociadas na bolsa de valores brasileira (BOANAIN; PEREIRA, 2009;
VIDOTTO et al., 2009; SANVICENTI, 2016) e outras a partir de dados relativos ao contrato
ou ao minicontrato do Ibovespa futuro (SAFFI, 2003; BAPTISTA; PEREIRA, 2008;
GUIMARÃES et al, 2011). Quanto aos resultados, Saffi (2003) concluiu que a Análise Técnica
não é capaz de gerar retornos positivos e Boanain e Pereira (2009) concluíram que um dos
padrões gráficos do estudo feito por eles foi capaz de gerar retornos positivos, ao passo que
outro, não. Todos os demais apontaram para capacidade de estratégias empíricas derivadas da
Análise Técnica gerarem retornos positivos, validando, portanto, esta forma da análise para o
mercado brasileiro.
Atualmente, os estudos de fronteira na área são aqueles que aliam Análise Técnica a
técnicas de aprendizagem de máquina. Isto se deve ao fato destas técnicas computacionais
serem particularmente tolerantes com imprecisão e incerteza, o que as torna atraentes para o
estudo de áreas ruidosas (VANSTONE; TAN, 2003), tais como as finanças.
Em levantamento bibliográfico realizado por Vanstorne e Tan (2003) sobre a
realização de análises de investimentos com o suporte destas técnicas computacionais, o
trabalho de Mizuno et al. (1998) figura como pioneiro na área. Na pesquisa, os autores
utilizaram redes neurais baseadas em indicadores técnicos para realizar suas predições, o que
os levou a obter um lucro simulado superior ao que obteriam caso utilizassem exclusivamente
os próprios indicadores técnicos.
No contexto do mercado brasileiro, o trabalho de Teixeira e Oliveira (2010) foi um
dos precursores. Nele os indicadores técnicos foram combinados com o modelo de classificação
k-nearest neighbor (KNN), aplicados na avaliação de investimentos em 15 ações negociadas
na bolsa de valores do Brasil. O desempenho verificado para o modelo proposto foi superior ao
que seria obtido a com a estratégia buy-and-hold em 12 dos ativos analisados.
12

Por fim, o trabalho de Nobre e Neves (2019) merece destaque no contexto desta
discussão, uma vez que utilizou indicadores de Análise Técnica de forma combinada às técnicas
de Análise de Componentes Principais (ACP) e XGBoost na tarefa de classificar altas em ativos
financeiros, estratégia similar, portanto, a adotada neste estudo. Os resultados obtidos indicam
que a estratégia utilizada foi de capaz gerar um retorno médio de 49,26% para os ativos
analisados, superior aos 32,41% que se obteria caso a gestão dos investimentos nestes mesmos
ativos tivesse adotado a estratégia do buy-and-hold ao longo do mesmo período.
13

3 METODOLOGIA

Nesta seção será apresentada a base de dados do trabalho, com informações relativas
aos ativos financeiros estudados, a fonte das informações e o intervalo de tempo considerado
na coleta dos dados. Logo após serão expostos os indicadores de Análise Técnica adotados,
com discussões acerca das formas de cálculo, dos períodos de abrangência e das estratégias de
uso. Em seguida, serão descritas as técnicas de tratamento empregadas aos dados. Na sequência,
serão expostos aspectos relativos ao XGBoost, biblioteca que fornece um framework de
gradiente boosting utilizada neste trabalho. Por fim, serão estabelecidos os critérios de avaliação
para os modelos propostos.

3.1 Base de Dados

Os dados utilizados neste trabalho são referentes aos preços diários de fechamento (𝑃𝑡 )
do minicontrato de Dólar Comercial (WDO)4 e do minicontrato do Ibovespa (WIN)5. Todas as
informações foram coletadas no Profit Trade Clear6 (NELOGICA, 2021) e abrangem o período
de 17 de maio de 2005 a 24 de fevereiro de 2021, o que corresponde a 3.898 observações para
o WDO e 3.900 observações para o WIN7.
Estes ativos são classificados como derivativos, dado que seus valores de negociação
derivam de outros ativos de referência (ASSAF NETO, 2007). O WDO é um derivativo
utilizado para proteção frente a negociações comerciais ou financeiras em dólar americano, ao
passo que o WIN possibilita ao investidor traçar estratégias para proteção diante da volatilidade
do mercado de ações. Ambos também podem ser negociados exclusivamente pelo motivo de
especulação, situação em que o investidor se posiciona frente às oscilações do mercado na
expectativa de auferir lucro (B3a, 2021; B3b, 2021).
A negociação destes ativos ocorre no mercado futuro, no qual as partes se obrigam a
comprar ou vender em uma determinada data e preço. Mensalmente são iniciados novos ciclos

4 Código de negociação do ativo.


5 Código de negociação do ativo.
6 O Profit Trade Clear é um software da Nelogica Sistemas, autorizado para o uso de clientes da

Corretora Clear. O software fornece acesso a informações sobre cotações de ativos e outros dados
que auxiliam na análise do mercado financeiro, mediante parâmetros definidos e inseridos pelo
próprio usuário.
7 Nos dias 03/04/2006 e 01/03/2006 constam dados de negociação para o WIN e não constam para o

WDO, o que justifica a diferença na quantidade de observações entre os ativos. Por entender que se
trata de um fato irrelevante ao contexto e objetivo deste trabalho, não foram investigadas as causas
que justifiquem tal diferença.
14

de negociação, de modo que toda operação de compra (venda) aberta em um ciclo deve ser
encerrada por uma operação de venda (compra) dentro do próprio ciclo. A negociação não
requer o desembolso do valor integral do contrato, sendo o valor financeiro envolvido na
transação tão somente aquele relativo às eventuais variações no preço ajustado em relação aos
preços de referência (ASSAF NETO, 2007).
Neste contexto, uma operação que envolva a compra (venda) de um minicontrato
WDO por R$ 5.000,00, por exemplo, não requer o desembolso deste valor8. Caso a operação
de liquidação seja uma venda (compra) a R$ 5.001,00, por exemplo, o negócio gerou o lucro
(prejuízo) de 1 ponto, o que equivale a R$ 10,00 de ganho (perda). Por outro lado, caso a
operação de liquidação seja realizada pelo valor de R$ 4.999,00, a negociação resultou em um
prejuízo (lucro) de 1 ponto, equivalente a uma perda (ganho) de R$ 10,00. Raciocínio análogo,
mas com parâmetros diferentes, também é aplicado para a negociação do minicontrato WIN.
Os dados relativos ao WDO foram separados em dois conjuntos, C1 e C2, conforme
pode ser visto na Figura 3.1. O conjunto C1, com 3.366 observações relativas ao período de 17
de maio de 2005 a 28 de dezembro de 2018, foi utilizado para treino e teste do modelo proposto.
O conjunto C2, com 532 observações relativas ao período de 2 de janeiro de 2019 a 24 de
fevereiro de 2021, foi utilizado para simular a aplicação prática do modelo desenvolvido. A
escolha da data que marca o fim de C1 e o início de C2 se deu pela coincidência com o início
de um novo mandato presidencial, o que representa o início de um novo ciclo político-
econômico.

Figura 3.1 – Série temporal de preços do WDO – 2006 a 2021.

Fonte: Nelogica (2021)

8 Apesar de não ser necessário o desembolso do valor integral do contato, as corretoras exigem o
depósito de uma margem de garantia. Na Corretora Clear, por exemplo, esta margem é de R$ 22,00
por contrato negociado.
15

É importante observar na Figura 3.1 que os dados de C1 possuem movimentos de alta


intensa (2008), baixa intensa (2009) e lateralizados (2016 a 2018). Ou seja, os dados utilizados
para a calibragem do modelo refletem diferentes padrões de comportamento, o que pode
contribuir com a qualidade de sua habilidade preditiva, posta à prova com os dados de C2, que
também apresentam diferentes padrões de comportamento nos movimentos dos preços.
Na Figura 3.2 encontram-se os dados relativos ao WIN, os quais também foram
separados nos conjuntos C1 – utilizado para treino e teste do modelo proposto, e C2 – utilizado
para simular a aplicação prática do modelo desenvolvido. O conjunto C1 abrange o período
compreendido entre 17 de maio de 2005 a 28 de dezembro de 2018, totalizando 3.368
observações. O conjunto C2 é relativo ao período compreendido entre 2 de janeiro de 2019 e
24 de fevereiro de 2021, totalizando 532 observações.

Figura 3.2 – Série temporal de preços do WIN – 2006 a 2021.

Fonte: Nelogica (2021)

Na Figura 3.2 é possível observar que o padrão de comportamento de preços observado


em C2 (2019 a 2020) reproduz padrão similar ao observado em C1 (2006 a 2010). Assim como
ocorre para o WDO, tal fato pode refletir na qualidade da habilidade preditiva do modelo
calibrado.
Por fim, tanto para o WDO como para o WIN, a partir dos valores de 𝑃𝑡 foram
calculados os retornos diários 𝑅𝑡 , conforme exposto na Equação 3.1.

𝑃𝑡 − 𝑃𝑡−1
𝑅𝑡 = (3.1)
𝑃𝑡−1
16

Com base nos valores de 𝑅𝑡 foi criada uma variável – Sinal (𝑆𝑡 ), utilizada para indicar
se os ativos observaram uma alta ou baixa determinado dia, comparativamente ao dia anterior.
Esta foi a variável dependente, ou seja, aquela para a qual foi buscado ajustar um modelo capaz
de predizer qual o seu valor.

𝐴𝑙𝑡𝑎, 𝑠𝑒 𝑅𝑡 > 0
𝑆𝑡 = { (3.2)
𝐵𝑎𝑖𝑥𝑎, 𝑠𝑒 𝑅𝑡 ≤ 0

Além das observações 𝑃𝑡 , a base de dados de cada um dos ativos também inclui
informações relativas a 43 indicadores de Análise Técnica, também coletados no Profit Trade
Clear (NELOGICA, 2021). Estes indicadores foram utilizados como variáveis preditoras neste
trabalho e serão explicados mais detalhadamente na seção 3.2.

3.2 Indicadores Técnicos

No contexto da Análise Técnica, os indicadores técnicos fornecem uma visão dentro


das forças de oferta e demanda e ajudam a identificar tendências e pontos de reversão no
mercado (NORONHA, 2006). Esta premissa pauta a adoção destes indicadores como input para
o modelo de predição de Sinal (𝑆𝑡 ), que vem a ser a variável dependente neste trabalho.
Atualmente há uma profusão de indicadores técnicos à disposição do público em geral.
As plataformas de negociação de títulos os oferecem a um custo baixo ou até mesmo de forma
gratuita. Entretanto, em estudos acadêmicos predominam as análises acerca de indicadores mais
tradicionais, vide os resultados obtidos por Nazário et al. (2017) no mais recente levantamento
bibliográfico publicado sobre a Análise Técnica, a qual analisou 85 estudos. Dentre eles, os
indicadores técnicos mais utilizados foram a Média Móvel, o Índice de Força Relativa e o
Estocástico, presentes em 44, 10 e 89 artigos, respectivamente. A escolha dos indicadores
técnicos que serão utilizados neste trabalho como variáveis preditoras é baseada neste resultado.
Como a variável alvo deste estudo possui dois resultados possíveis – Alta e Baixa, se
impõe a necessidade de que as variáveis preditoras também possuam duas classes. Diante desta
constatação, dentre os principais indicadores técnicos relatados por Nazário et al. (2017), foi

9 Pemy (2012) está entre os estudos que Nazário et al. (2017) indicam ter utilizado o Estocástico como
indicador técnico. No entanto, a estratégia operacional adotada por Pemy (2012) é estocástica no
sentido probabilístico. Desta forma, neste trabalho foi considerado que oito artigos da revisão feita
por Nazário et al. (2017) utilizaram o Estocástico como indicador técnico e não nove, como eles
apontaram originalmente.
17

necessário excluir o índice de força relativa do conjunto de indicadores utilizado neste trabalho,
dado que suas indicações sinalizam alta, baixa, mas também situações sem tendência definida,
ou seja, três possíveis classes.
Neste contexto, nesta pesquisa foram utilizadas as Médias Móveis e o Estocástico
como variáveis preditoras. Nas próximas seções serão detalhadas suas formas de cálculo,
períodos de abrangência e estratégias de uso, parâmetros estes que resultaram nos 43
indicadores técnicos utilizados aqui como variáveis preditoras.

3.2.1 Médias Móveis

No contexto da Análise Técnica, existem muitas variações nas formas de cálculo,


periodicidades de abrangência e estratégias de uso para uma Média Móvel, mas, em todas elas,
o que se busca é uma série suavizada das séries de preços de ativos financeiros. Dentre os 44
estudos relacionados por Nazário et al. (2017) que recorreram à média móvel, 10 deles a
adotaram como ferramenta operacional exclusiva para extrair informações. Na construção deste
trabalho, estes 10 estudos foram analisados e utilizados como padrão de referência, na
expectativa de identificar quais as formas de cálculo, os períodos de abrangência e as estratégias
de uso mais recorrentes na literatura (RATNER; LEAL, 1999; VANDEWALLE et al., 1999;
GUNASEKARAGE; POWER, 2001; ELLIS; PARBERY, 2005; FONG; YOUNG, 2005;
MING-MING; SIOK-HWA, 2006; VIDOTTO et al., 2009; ZHU; ZHOU, 2009; COSTA et al.,
2015; GEBKA et al., 2015).
Quanto às formas de cálculo das médias, dentre estes 10 estudos revisados, somente
Vidotto et al. (2009) não utilizou a estratégia de Média Móvel Aritmética, tendo recorrido
exclusivamente ao Moving Average Convergence-Divergence em sua estratégia de análise. Já
Costa et al. (2015), além de utilizarem o Moving Average Convergence-Divergence em suas
análises, também utilizaram a média móvel exponencial. Ellis e Parbery (2005) adotaram a
média móvel adaptativa, única que não foi adotada neste trabalho como variável preditora, por
não estar disponível para configuração no Profit Trade Clear, fonte dos dados. Todas as demais
foram utilizadas e terão suas formas de cálculo descritas com mais detalhes adiante.
A Média Móvel Aritmética (𝑀𝑀𝐴) para as séries de preços de fechamento diário (𝑃𝑡 )
é dada pela Equação 3.3, que registra a média móvel de 𝑛 períodos no instante 𝑖.
18

𝑖−𝑛
1
𝑀𝑀𝐴𝑛(𝑖) = ∑ 𝑃𝑡 (3.3)
𝑛
𝑡=𝑖

A Média Móvel Exponencial (𝑀𝑀𝐸) no tempo 𝑡, por sua vez, é dada pela Equação
3.4. Nela há um fator de ajuste (𝑘 = 2/(𝑛 + 1)), o qual aumenta o peso do preço mais recente
no cálculo da média, em razão inversa ao número de períodos 𝑛 de abrangência da série. É
importante mencionar que no caso de 𝑡 = 1, a média 𝑀𝑀𝐴𝑛(𝑖) é utilizada como representação

de 𝑀𝑀𝐸𝑛(𝑡−1) .

𝑀𝑀𝐸𝑛(𝑡) = 𝑃𝑡 × (𝑘) + 𝑀𝑀𝐸𝑛(𝑡−1) × (1 − 𝑘) (3.4)

Por fim, o Moving Average Convergence-Divergence (𝑀𝐴𝐶𝐷) é obtido pela Equação


3.5. Este indicador computa a diferença entre uma Média Móvel Exponencial de período curto
(𝑀𝑀𝐸𝑐(𝑖) ) com relação a uma Média Móvel Exponencial de período longo (𝑀𝑀𝐸𝑙(𝑖) ).

𝑀𝐴𝐶𝐷𝑡 = 𝑀𝑀𝐸𝑐(𝑡) − 𝑀𝑀𝐸𝑙(𝑡) (3.5)

Quanto ao período de abrangência das médias, não foi identificado um padrão nos
trabalhos de referência desta pesquisa. Acerca deste aspecto, Kirkpatrick e Dahlquist (2011)
apontam que, quanto maior o período de abrangência, mais informação é considerada. No
entanto, em casos assim, menor será o impacto das novas observações, ou seja, menos sensível
será a média às alterações mais recentes. Já Noronha (2006) argumenta que a definição do
período de abrangência de uma média passa pela definição da tendência que se quer capturar.
Assim, quanto maior a tendência que se busca identificar, maior deve ser a abrangência da
média calculada. Isto posto, considerando que uma semana operacional é composta de cinco
dias, neste trabalho serão calculadas médias de 5, 10, 15, 20, 25, 30, 35 e 40 períodos, tendo
em vista a captação de tendências que se desenvolvam no intervalo de uma semana a dois meses.
Em relação às estratégias de uso, nos casos da 𝑀𝑀𝐴 e da 𝑀𝑀𝐸, sete trabalhos
utilizaram o cruzamento de médias com diferentes períodos de tempo na tomada de decisão
(RATNER; LEAL, 1999; VANDEWALLE et al., 1999; GUNASEKARAGE; POWER, 2001;
FONG; YOUNG, 2005; MING-MING; SIOK-HWA, 2006; COSTA et al., 2015; GEBKA et
al., 2015). Outros sete trabalhos utilizaram a estratégia de cruzamento da observação de preço
19

mais recente com a média na tomada de decisão (RATNER; LEAL, 1999; GUNASEKARAGE;
POWER, 2001; ELLIS; PARBERY, 2005; FONG; YOUNG, 2005; MING-MING; SIOK-
HWA, 2006; ZHU; ZHOU, 2009; GEBKA et al., 2015).
Assim, nos casos da 𝑀𝑀𝐴 e 𝑀𝑀𝐸, assumindo 𝑐 = (1, 5, 10, 15) como conjunto de
periodicidades de curto prazo e 𝑙 = (5, 10, 15, 20, 30, 40) como o conjunto das periodicidades
de longo prazo, será definida uma nova variável preditora sempre que a condição 𝑐 < 𝑙 for
respeitada, o que resulta em 18 variáveis de (𝑀𝑀𝐴) e em 18 variáveis de (𝑀𝑀𝐸), totalizando
36 variáveis. Assim, na estratégia de cruzamento de Médias Móveis, caso em que 𝑐 ≠ 1, foram
criadas 24 variáveis preditoras, sendo 12 (𝑀𝑀𝐴) e 12 (𝑀𝑀𝐸). Já na estratégia de cruzamento
do preço mais recente com a média, caso em que 𝑐 = 1, foram criadas 12 variáveis preditoras,
sendo 6 𝑀𝑀𝐴 e 6 𝑀𝑀𝐸.
No caso das estratégias de cruzamento de média móveis, os resultados gerados por
estas variáveis no tempo 𝑡 devem indicar o comportamento esperado para a variável dependente
no tempo seguinte 𝑆𝑡+1. Desta forma, nos casos das Médias Móveis (𝑀𝑀) em geral
(𝑀𝑀𝐴 e 𝑀𝑀𝐸), a indicação de Alta (1) ou Baixa (0) de 𝑆𝑡+1 é dada pela Equação 3.6.

1, 𝑠𝑒 𝑀𝑀𝑐 > 𝑀𝑀𝑙


𝑀𝑀(𝑐, 𝑙) = { (3.6)
0, 𝑠𝑒 𝑀𝑀𝑐 ≤ 𝑀𝑀𝑙

Já para o caso das estratégias de cruzamento dos preços com a Médias Móvel (𝑀𝑀)
em geral no tempo 𝑡, a indicação é dada pela Equação 3.7.

1, 𝑠𝑒 𝑃𝑡 > 𝑀𝑀𝑡
𝑀𝑀(𝑡) = { (3.7)
0, 𝑠𝑒 𝑃𝑡 ≤ 𝑀𝑀𝑡

Quanto ao 𝑀𝐴𝐶𝐷, trata-se de um indicador que já adota períodos padrão em sua


proposição original. Tratam-se de 12 observações para a 𝑀𝑀𝐸𝑐(𝑡) e 26 observações para a

𝑀𝑀𝐸𝑙(𝑡) . A indicação gerada pelo 𝑀𝐴𝐶𝐷 requer um passo adicional, que envolve a construção

da Linha do Sinal 𝐿𝑆. Esta corresponde à Média Móvel Exponencial de 9 observações do


próprio 𝑀𝐴𝐶𝐷. Por fim, a indicação de Alta (1) ou Baixa (0) de 𝑆𝑡+1 gerada pelo 𝑀𝐴𝐶𝐷 é
dada pela Equação 3.8.

1, 𝑠𝑒 𝑀𝐴𝐶𝐷𝑡 > 𝐿𝑆9


𝑀𝐴𝐶𝐷(𝑡) = { (3.8)
0, 𝑠𝑒 𝑀𝐴𝐶𝐷𝑡 ≤ 𝐿𝑆9
20

3.2.2 Estocástico

O Estocástico (𝐸𝑆𝑇𝑂𝐶) rastreia a relação entre cada preço de fechamento 𝑃𝑡 e as


cotações máximas (𝑀𝑎𝑥𝑛 ) e mínimas (𝑀𝑖𝑛𝑛 ) em 𝑛 períodos, partindo do pressuposto de que,
em períodos de alta, os preços de fechamento tendem a estar mais próximos das cotações
máximas, ao passo que, em períodos de baixa estarão mais próximos das cotações mínimas
(NORONHA, 2006).
O procedimento inicial para o cálculo do indicador passa pela determinação do
Estocástico Bruto (%𝐾) para 𝑛 períodos, expresso pela Equação 3.9. O passo seguinte consiste
no cálculo de uma 𝑀𝑀𝐴 de 3 períodos de %𝐾, denominada %𝐷3 .

𝑃𝑡 − 𝑀𝑖𝑛𝑛
%𝐾𝑛(𝑡) = × 100 (3.9)
𝑀𝑎𝑥𝑛 − 𝑀𝑖𝑛𝑛

A estratégia de uso do 𝐸𝑆𝑇𝑂𝐶 é a menos frequente dentre os estudos levantados por


Nazário et al. (2017) e utilizados como base para a construção deste trabalho (BAO; YANG,
2008; TEIXEIRA; OLIVEIRA, 2010; LIN et al., 2011; CHEN et al., 2013; TICKNOR, 2013;
BISOI; DASH, 2014; FORTUNY et al., 2014; THARAVANIJ et al., 2015). A estratégia de uso
adota para o 𝐸𝑆𝑇𝑂𝐶 foi definido tal como em Lin et al. (2011) e Tharavanij et al. (2015). Nela,
os sinais de Alta (1) ou Baixa (0) de 𝑆𝑡+1 gerados pelo 𝐸𝑆𝑇𝑂𝐶 resultam dos cruzamentos entre
%𝐾 e %𝐷, conforme descrito na Equação 3.10.

1, 𝑠𝑒 %𝐾𝑛(𝑡) > %𝐷3


𝐸𝑆𝑇𝑂𝐶(𝑡) = { (3.10)
0, 𝑠𝑒 %𝐾𝑛(𝑡) ≤ %𝐷3

Para manter a compatibilidade dos prazos entre todos os indicadores utilizados nesta
pesquisa e também tendo em vista a captação de tendências que se desenvolvam no intervalo
de uma semana a dois meses, o conjunto dos valores que definem o período de abrangência
para o cálculo do 𝐸𝑆𝑇𝑂𝐶 é dado por 𝑛 = (5, 10, 15, 20, 30, 40). Desta forma, foram definidas
6 variáveis preditoras derivadas do 𝐸𝑆𝑇𝑂𝐶 na construção desta pesquisa.
21

3.2.3 Visão Geral dos Indicadores

A Tabela 3.1 apresenta um resumo dos 43 indicadores utilizados neste trabalho, com
seus respectivos parâmetros de apuração e suas grades de variação. Todos estes indicadores
foram apurados tanto para WDO como para WIN.

Tabela 3.1 – Resumo dos indicadores.


Indicador Periodicidade Estratégia Quantidade
𝑀𝑀𝐴 𝑐 = {1, 5, 10, 15) 1, 𝑠𝑒 𝑀𝑀𝐴𝑐 > 𝑀𝑀𝐴𝑙 18
𝑀𝑀𝐴(𝑐, 𝑙) = {
0, 𝑠𝑒 𝑀𝑀𝐴𝑐 ≤ 𝑀𝑀𝐴𝑙
𝑙 = {5, 10, 15, 20, 30, 40)
𝑀𝑀𝐸 𝑐 = {1, 5, 10, 15) 1, 𝑠𝑒 𝑀𝑀𝐸𝑐 > 𝑀𝑀𝐸𝑙 18
𝑀𝑀𝐸(𝑐, 𝑙) = {
0, 𝑠𝑒 𝑀𝑀𝐸𝑐 ≤ 𝑀𝑀𝐸𝑙
𝑙 = {5, 10, 15, 20, 30, 40)
𝑀𝐴𝐶𝐷 𝑐 = {12) 1, 𝑠𝑒 𝑀𝐴𝐶𝐷𝑡 > 𝐿𝑆9 1
𝑀𝐴𝐶𝐷(𝑡) = {
0, 𝑠𝑒 𝑀𝐴𝐶𝐷𝑡 ≤ 𝐿𝑆9
𝑙 = {26)
em que:
𝑀𝐴𝐶𝐷𝑡 = 𝑀𝑀𝐸𝑐(𝑡) − 𝑀𝑀𝐸𝑙(𝑡)

e:
𝐿𝑆9 é uma 𝑀𝑀𝐸9 do 𝑀𝐴𝐶𝐷
𝐸𝑆𝑇𝑂𝐶 𝑛 = {5, 10, 15, 20, 30, 40) 1, 𝑠𝑒 %𝐾𝑛(𝑡) > %𝐷3 6
𝐸𝑆𝑇𝑂𝐶(𝑡) = {
0, 𝑠𝑒 %𝐾𝑛(𝑡) ≤ %𝐷3

em que:
𝑃𝑡 − 𝑀𝑖𝑛𝑛
%𝐾𝑛(𝑡) = × 100
𝑀𝑎𝑥𝑛 − 𝑀𝑖𝑛𝑛
e:
%𝐷3 é uma 𝑀𝑀𝐴 de %𝐾𝑛(𝑡) com 𝑛 = 3

Fonte: Elaboração própria (2021)

Considerando que a calibragem dos indicadores consome parte inicial do conjunto de


dados utilizado, tem-se que os conjuntos finais de treino e teste C1 do WDO e do WIN foram
compostos por 3.322 e 3.324 observações, respectivamente.
Por fim, a Figura 3.3 ilustra como se comportam os indicadores pari passu à evolução
dos preços de um ativo, aplicados apenas para efeito ilustrativo em uma parte dos dados de
WIN utilizados neste trabalho. Na seção superior – série em branco – é possível acompanhar a
evolução dos preços do ativo.
22

Figura 3.3 – Exemplo ilustrativo de Médias Móveis, MACD e Estocástico.

Fonte: Nelogica (2021)

Junto aos preços dos ativos na Figura 3.3 estão plotadas em a azul a 𝑀𝑀𝐴 de 5
períodos e em vermelho a 𝑀𝑀𝐴 de 15 períodos. O comportamento verificado para estes dados
é representativo do padrão verificado para diferentes periodicidades, tanto da 𝑀𝑀𝐴 como da
𝑀𝑀𝐸. Ainda na Figura 3.3, na seção central, é possível ver o padrão gráfico das linhas adotadas
na estratégia do 𝑀𝐴𝐶𝐷. A linha vermelha representa o próprio 𝑀𝐴𝐶𝐷 e a azul a linha do sinal.
Já na seção inferior é possível visualizar o comportamento do 𝐸𝑆𝑇𝑂𝐶, sendo que a linha
vermelha representa %𝐾 e a linha azul ao %𝐷.

3.3 Tratamento dos Dados

O conjunto de dados C1 foi separado em subconjuntos de treino (80%) e teste (20%).


O subconjunto de treino, com 43 variáveis preditoras, é de alta dimensionalidade. Em casos
como este pode haver variáveis com pouco conteúdo informacional ou então variáveis
redundantes (NGUYEN; HOLMES, 2019). Estas situações são razoáveis de se imaginar no
contexto desta pesquisa, ao se considerar que todas as 43 variáveis preditoras derivam de 4
indicadores técnicos, computados para diferentes periodicidades.
Como as variáveis preditores têm como resultados valores 0 e 1, um primeiro
tratamento para redução de dimensionalidade utilizada foi a Análise de Componentes Principais
(ACP). Esta técnica busca construir novas variáveis a partir de combinações lineares das
variáveis originais. Na realização do procedimento são impostas condições para que as novas
23

variáveis (componentes) sejam não correlacionadas, bem como para que captem a maior
variabilidade possível dos dados originais (IZBICKI; SANTOS, 2020). Assim, neste trabalho,
a realização da ACP permitiu a criação de um banco de dados com componentes não
relacionados, com a imposição de explicar ao menos 80% da variabilidade original dos dados.
O segundo tratamento de dados levou em conta o fato de que, a rigor, apesar de terem
sido computadas gerando os resultados quantitativos, as variáveis preditoras são qualitativas. A
indicação 1 representa uma de Alta e a indicação 0 uma Baixa. Assim, para casos como estes,
Nguyen e Holmes (2019) indicam que seja utilizada a técnica de Análise de Correspondência
Múltipla (ACM) para reduzir a dimensionalidade dos dados. Com o uso desta técnica, a
exemplo da ACP, também se buscou construir um conjunto derivado dos dados originais,
composto por componentes não correlacionados e representativos de ao menos 80% da
variabilidade dos dados originais. Uma diferença entre a ACP e a ACM está na
dimensionalidade dos dados, a qual, neste segundo tratamento, é dada pela quantidade de
categorias (2) multiplicada pela quantidade de variáveis (43), o que resulta em um banco de
dados com 86 variáveis (PRADO, 2012). Assim, cada variável utilizada para a realização da
ACM corresponde a uma resposta possível de cada variável preditora original.
Um terceiro e último tratamento de dados, denominado variáveis originais
padronizadas (VOP), utilizou as 43 variáveis preditoras originais, sobre as quais foi aplicado o
procedimento de padronização, pondo todas as variáveis em escalas semelhantes através da
subtração da média e divisão pelo desvio padrão, impedindo que uma variável influencie em
excesso no modelo unicamente pela escala de sua mediação original (BRUCE; BRUCE, 2019).
Este tratamento também teve a utilidade de servir como referência para avaliação de
desempenho dos dois outros definidos anteriormente.
Por fim, em cada um dos três tratamentos realizados foi implementada a técnica de
validação cruzada, que envolve dividir os dados em 𝑘 partições, sendo que 𝑘-1 delas serão
usadas para realizar o treinamento e o restante constituirá o subconjunto de teste. Este processo
se repete 𝑘 vezes até que todas as partições tenham sido utilizadas como subconjuntos de testes.
Assim, o desempenho global do modelo de classificação que será implementado resultará da
média dos desempenhos individuais das 𝑘 rodadas realizadas (SILVA et al., 2010). Este
procedimento visa mitigar o risco de sobreajuste, situação em que o modelo de classificação
proposto se ajusta bem ao conjunto de dados sobre o qual foi treinado, mas não reproduz a
mesma capacidade de ajuste para novos conjuntos de dados. Através da validação cruzada, pela
lei dos grandes números, espera-se que a estimativa final não seja sobreajustada (IZBICKI;
SANTOS, 2020). Neste trabalho foi adotado um 𝑘 = 10 para a realização validação cruzada.
24

Cabe mencionar que todas os procedimentos descritos nesta seção foram postos em
prática com o auxílio do pacote tidymodels, implementado no software R, versão 3.6.1 (R
CORE TEAM, 2019).

3.4 XGBoost

XGBoost é nome de uma biblioteca que implementa um modelo ensemble de


classificação e regressão baseado em árvores de decisão agregadas através dos métodos bagging
e boosting. Sua compreensão pressupõe o entendimento de cada um dos elementos que o define,
o que será feito nos próximos parágrafos.
A árvore de decisão é um modelo voltado para classificação ou regressão, baseado na
execução de sucessivas partições binárias de uma amostra, buscando a constituição de
subamostras internamente homogêneas. A classificação destas subamostras se baseia em uma
medida descritiva e na predição de novos elementos (TACONELI, 2008). Cada subamostra
particionada recebe o nome de nó e cada resultado final identificado recebe o nome de folha
(IZBICKI; SANTOS, 2020).
A construção de uma árvore de decisão é feita através da criação de uma árvore grande
e complexa e sua posterior poda, visando evitar seu sobreajuste ao conjunto de dados utilizado.
A Figura 3.4, que ilustra a utilização de uma árvore para prever uma nova observação, é feita
começando do primeiro nó, verificando se a condição nele imposta é ou não atendida. Em caso
afirmativo, prossegue-se à esquerda, em caso negativo, à direita. Tal procedimento é repetido,
até que se atinja uma folha, última instância de classificação (IZBICKI; SANTOS, 2020).

Figura 3.4 – Estrutura de uma Árvore de Decisão.


Condição 1

F1

nós
F2 F3
Condição 2

folhas
Fonte: Izbicki e Santos, 2000.
25

No contexto das árvores de decisão, a estratégia ensemble é implementada por meio


da construção de um modelo robusto de predição, que combina resultados de uma coleção de
árvores. Esta combinação pode ser feita através dos métodos bagging e/ou boosting.
O método bagging10 gera diferentes versões de árvores de decisão e as utiliza de
maneira agregada para prever um determinado resultado. As várias versões das árvores de
decisão são formadas a partir de amostras bootstrap do conjunto de dados originais (HASTIE
et al. 2009). Em geral, mesmo utilizando diferentes amostras bootstrap para construir diferentes
árvores, estas tendem a ser parecidas. Para contornar esta situação, somente parte das variáveis
preditoras – selecionadas aleatoriamente – é utilizada na construção de cada árvore, resultando
no modelo conhecido como Floresta Aleatória, em alusão ao fato da decisão final ser tomada
através da agregação de várias árvores de decisão (CHEN; GUESTRIN, 2016).
Já o método boosting inicia o processo a partir de uma primeira árvore construída com
alto viés e baixa variância, ou seja, com alto grau de sobreajuste aos dados de treinamento.
Deste ponto em diante novas árvores são construídas de forma sequenciada, a partir de um
aprimoramento da árvore anterior, à medida em que busca reduzir este grau de sobreajuste a
cada nova rodada de ajuste (CHEN; GUESTRIN, 2016).
O XGBoost é um ensemble que utiliza o bagging e boosting em sua construção, uma
vez que uma determinada árvore inicialmente construída vai sendo sequencialmente
aprimorada por meio do boosting, a partir de novas árvores construídas por meio do bagging
pautado na lógica das árvores construídas em uma Floresta Aleatória.
Formalmente, o XGBoost consiste na utilização de 𝑛 observações na construção de 𝑇
árvores que minimizem a função objetivo (Equação 3.11), ajustada por parâmetros ∅, composta
por uma função perda 𝑙 – que mede a diferença entre os valores observados e preditos, e por
um termo de regularização Ω – utilizado para evitar o sobreajuste do modelo aos dados (CHEN;
GUESTRIN, 2016; ROCHA; 2018).

𝑛 𝑇

ℒ(∅) = ∑ 𝑙(𝑦̂,𝑖 𝑦𝑖 ) + ∑ Ω(𝑓𝑘 ) (3.11)


𝑖=1 𝑘=1

A otimização da Equação 3.11 recorre às aproximações de segunda ordem das séries


de Taylor (CHEN; GUESTRIN, 2016). Para problemas de classificação, como é o caso deste
trabalho, a função perda (𝑙) pode ser estimada de diferentes maneiras, sendo que, neste trabalho,

10 Bagging é um acrônimo de bootstrap aggregating.


26

foram utilizadas a função logística e a hinge loss11. Por fim, os parâmetros (∅) a serem definidos
no processo são (KUHN, WICKHAM; 2020)

mtry: Quantidade de preditores amostrados aleatoriamente ao realizar o bagging.


trees: Quantidade de árvores contida no ensemble.
min_n: Quantidade mínima de dados contida para a partição de um novo nó.
tree_depth: Profundidade máxima da árvore.
learn_rate: Taxa de aprendizagem da árvore a cada nova rodada do boosting.
loss_reduction: Otimização requerida para novas partições.
sample_size: Proporção das observações utilizadas no bagging.

Exceto pelo parâmetro trees, cujo valor foi mantido fixo em 1.000, os demais tiveram
seus valores definidos a partir de um intervalo de variação, apresentado na Tabela 3.2.

Tabela 3.2 – Intervalos de variação dos parâmetros de otimização do XGBoost


Parâmetros Intervalos
mtry [2;15]
min_n [2;100]
tree_depth [2;15]
learn_rate [0,01;0,56]
loss_reduction [0,01;0,56]
sample_size [0,1;1]

Serão realizadas diferentes combinações entre os parâmetros e será escolhida aquela


que proporcione a árvore que melhor se ajuste aos dados. Para a realização destas e das demais
estimativas desta seção foi utilizado o pacote tidymodels, implementado no software R, versão
3.6.1 (R CORE TEAM, 2021).

3.5 Critérios de Avaliação de Desempenho

Após a realização dos 3 tipos diferentes de tratamento dos dados – (𝐴𝐶𝑃), (𝐴𝐶𝑀)
(𝑉𝑂𝑃), bem como considerando o fato de que o XGBoost foi realizado com base em 2 funções

11 A regressão logística realiza a classificação com base em probabilidades e a hinge loss produz o
resultado dicotômico 0 ou 1 (XGBoost, 2021).
27

de perda distintas – regressão logística e hinge loss, tem-se que 6 modelos serão ajustados para
o ativo WIN e outros 6 modelos para o WDO. A Tabela 3.1 ilustra as configurações destes
modelos, com M1 a M6 relativos ao minicontrato de Dólar Comercial (WDO) e M7 a M12 ao
minicontrato do Ibovespa (WIN). É com base nesta terminologia que serão analisados os
resultados deste trabalho.

Tabela 3.1 – Configuração dos modelos desenvolvidos.


Critério M1 | M7 M2 | M8 M3 | M9 M4 | M10 M5 | M11 M6 | M12
ACP X X - - - -
ACM - - X X - -
VOP - - - - X X
Regressão Logística - X - X - X
Hinge Loss X - X - X -
Fonte: Elaboração própria (2021)

Cada um destes modelos será avaliado de duas formas. A primeira em função do seu
poder de classificação a partir dos obtidos no conjunto de teste, que corresponde a 20% dos
dados de C1. A segunda forma em função dos resultados financeiros que são capazes de gerar,
a partir das predições realizadas quando aplicados aos dados de C2. Todas estas estimativas
foram realizadas com o auxílio do Microsoft Excel® 365 (MICROSOFT, 2021).

3.5.1 Poder de Classificação

A qualidade do modelo para classificar novas observações será avaliada levando em


consideração Acurácia (𝐴), expressa na Equação 3.12. Esta medida considera a quantidade de
predições acertadas de alta (𝑎) e baixa (𝑑), relativamente ao total de predições realizadas, que
inclue tanto as predições de alta e baixa corretas já descritas (𝑎 e 𝑑), como também as predições
incorretas de alta (𝑏) e de baixa (𝑐) (FONTELLES, 2012).

𝑎+𝑑
𝐴= (3.12)
𝑎+𝑏+𝑐+𝑑

Além da Acurácia (𝐴), serão avaliadas as medidas de Sensibilidade (𝑆),


Especificidade (𝐸), Valor Preditivo Positivo (VPP) e Valor Preditivo Negativo (VPN). A
28

Sensibilidade (𝑆) verifica a qualidade das indicações de alta realizadas pelo modelo ótimo e é
dada pela Equação 3.13.

𝑎
𝑆= (3.13)
𝑎+𝑐

A Especificidade (𝐸), por sua vez, avalia a qualidade das indicações de baixa e é dada
pela Equação 3.14.

𝑑
𝐸= (3.14)
𝑏+𝑑

O Valor Preditivo Positivo (VPP) mede a proporção de predições acertadas de altas


frente a todos os valores de alta preditos, como visto na Equação 3.15.

𝑎
𝑉𝑃𝑃 = (3.15)
𝑎+𝑏

Já a Valor Preditivo Negativo (VPN) mede a proporção de predições acertadas de


baixa frente a todos os valores de baixa preditos, como visto na Equação 3.16.

𝑑
𝑉𝑃𝑁 = (3.16)
𝑐+𝑑

3.5.2 Resultado Financeiro

Para avaliação do desempenho financeiro dos modelos desenvolvidos neste trabalho,


foi adotada a estratégia empírica de negociar diariamente um contrato. Esta estratégia foi
aplicada no conjunto C2 dos dados, que abrangem o período de 2 de janeiro de 2019 e 24 de
fevereiro de 2021, totalizando 532 observações. Ou seja, foram realizadas 532 previsões para
cada um dos modelos e cada um dos ativos deste estudo. Para esta avaliação ser posta em prática
também foi necessário coletar dados de abertura dos ativos relativos ao período analisado.
Neste contexto, cabe a explicação que cada dia operacional pode ser representado por,
no mínimo, quatro informações de preços: abertura, máximo, mínimo e fechamento. Um dos
padrões gráficos mais recorrentes para ilustrar estes preços é o candlestick, cuja representação
29

pode ser vista na Figura 3.6. À esquerda é possível ver um dia12 em que o preço de fechamento
foi menor que o de abertura, resultando no preenchimento da imagem na cor preta. À direita
encontra-se um dia em que o preço de fechamento foi superior ao de abertura, levando a figura
a ser preenchida na cor branca.

Figura 3.6 – Exemplo ilustrativo de candlesticks de baixa e alta, respectivamente.

preço máximo
preço de preço de
abertura fechamento

preço de preço de
fechamento abertura
preço mínimo

Fonte: Elaborado pelo autor (2021)

Quanto à avaliação do resultado financeiro, quando a predição realizada no período 𝑡


foi de Alta (Baixa), foi gerada a indicação para que no período 𝑡 + 1 fosse feita uma compra
(venda) do ativo. Assim, assumindo que esta operação poderá ser executada pelo preço de
abertura e encerrada pelo preço de fechamento, havendo uma Alta (Baixa) naquele dia, a
operação terá gerado um lucro corresponde a amplitude dos preços de abertura e fechamento.
Por outro lado, caso a indicação tenha sido de Alta (Baixa) e o preço de fechamento tenha sido
inferior (superior) ao preço de abertura, a operação terá gerado um prejuízo.
Os resultados da aplicação deste procedimento foram computados de forma isolada
para operações de compra e de forma isolada para operações de venda. Também foi analisada
a situação em que era possível realizar tanto operações de compra como também operações de
venda. Dia após dia os valores das operações foram registrados no intuito de verificar o quanto
a carteira de investimento relativa a cada modelo estava acumulando de resultado financeiro.
Além das carteiras derivadas dos modelos implementados, também foi simulada uma
carteira ingênua, na qual uma compra (venda) foi realizada em 𝑡 + 1 em função de uma Alta
(Baixa) no preço do ativo em 𝑡, relativamente a preço observado em 𝑡 − 1. Esta carteira pode
ser vista como resultante de uma estratégia operacional “ingênua”, que servirá como base de

12 Aqui foi tratado como dia por ter sido o padrão dos dados adotado neste estudo. Mas, na verdade, o
candlestick é um padrão que pode representar qualquer periodicidade que se deseje.
30

comparação para os resultados dos modelos propostos em conformidade com a estratégia de


pesquisa deste estudo.
O desempenho de todas estas carteiras foi medido em termos de valor monetário
acumulado ao final do período. Também será feito um gráfico para expor o comportamento
evolutivo de todas as carteiras, pari passu à evolução dos preços dos ativos analisados. Todos
estes procedimentos foram realizados com o auxílio do Microsoft Excel® 365 (MICROSOFT
EXCEL, 2021).
31

4 RESULTADOS

As duas próximas seções são destinadas à realização de uma análise conjunta para
todos os modelos relativos ao minicontrato de Dólar Comercial (WDO) e para todo os modelos
relativos ao minicontrato do Ibovespa (WIN). Também serão analisados resultados da
modelagem relativos aos melhores modelos de cada ativo.

4.1 Minicontrato de Dólar Comercial (WDO)

Como a variável dependente deste trabalho possui duas classes possíveis de respostas,
a probabilidade de uma delas ser escolhida ao acaso é de 50%. Diante disto, as Acurácias (𝐴)
na base de teste demonstram uma baixa qualidade de todos os modelos propostos para WDO,
uma vez que variam entre 49,8% (M6) e 51,0% (M1), percentuais próximos, portanto, de uma
classificação baseada no acaso.
Este é um padrão que se repete nas outras métricas dos modelos M1 a M6, exceções
feitas para as Especificidades (𝐸) de M1 e M3, o que, em um primeiro momento, poderia indicar
uma boa capacidade dos modelos identificarem sinais de Baixa para o ativo. No entanto, para
estes modelos, em média 71,3% das previsões foram de Baixa, ao passo que nos demais esta
média foi de 52,5%. Assim, como M1 e M3 preveem Baixa com maior frequência, tendem a
acertar mais o resultado, elevando suas Especificidades (𝐸).
Por fim, relativamente aos resultados apresentados na Tabela 4.1, como os valores das
Acurácias (𝐴) para os dados de treino e os dados de teste são próximos, entende-se que nenhum
dos modelos é sobreajustado aos dados nos quais se baseiam.

Tabela 4.1 – Medidas de qualidade do poder de classificação para o WDO.


Critério M1 M2 M3 M4 M5 M6
Acurácia – dados de treino (%) 54,5 54,4 54,4 54,4 53,5 52,9
Acurácia – dados de teste (%) 51,0 50,7 50,8 50,8 50,1 49,8
Sensibilidade (%) 27,6 48,3 30,7 48,0 51,1 44,9
Especificidade (%) 73,2 52,9 70,0 53,5 49,1 54,4
Valor Preditivo Positivo (%) 49,4 49,4 49,3 49,5 48,8 48,3
Valor Preditivo Negativo (%) 51,6 51,9 51,5 52,0 51,4 51,0
Fonte: Elaboração própria (2021)
32

Ao analisar a Tabela 4.2, contudo, a percepção de qualidade dos modelos M1 a M6 se


altera parcialmente, frente àquela resultante da análise da Tabela 4.1. Em todos os modelos, os
resultados financeiros das operações exclusivamente de compra são positivos, com valor médio
de R$ 9.404, ao passo que as operações de compra geradas pela carteira “ingênua” CI-WDO
resultaram em ganho de R$ 1.325.
No caso das operações só de venda, todos os modelos resultaram em prejuízos
financeiros ao final do período. Dois aspectos chamam a atenção neste caso. O primeiro é que,
na carteira ingênua (CI-WDO) a perda é de mais de R$ 16 mil, enquanto a perda média para os
modelos é de cerca de R$ 8 mil. O segundo aspecto é que, apesar de não resultar em ganhos
financeiros, há um padrão de resultados nas operações só de venda, o que é um resultado
relevante.

Tabela 4.2 – Resultados financeiros para o WDO.


Critério M1 M2 M3 M4 M5 M6 CI-WDO*
Só compra (R$) 6.315 12.105 2.150 14.270 14.660 6.925 1.325
Só venda (R$) -11.065 -5.275 -15.230 -3.110 -2.720 -10.455 -16.460
Compra e Venda (R$) -4.750 6.380 -13.080 11.160 11.940 -3.530 -15.135
Fonte: Elaboração própria (2021)
* Modelo Ingênuo para o minicontrato de Dólar Comercial (CI-WDO)

A Figura 4.1 apresenta o comportamento evolutivo dos modelos, simultaneamente à


evolução dos preços de WDO. Os modelos M2, M4 e M5 se destacam frente aos demais,
sobretudo a partir de abril de 2020, pouco depois de uma alta acentuada no preço do WDO.
Neste período, M6 e CI-WDO acentuam seus prejuízos financeiros e M2, M4 e M5 passam a
ter ganhos mais expressivos.
33

Figura 4.1 – Desempenho financeiro evolutivo para os modelos de WDO.


18.000 7.000
15.000 6.500
12.000 6.000
Compra e Venda - Linhas (R$)

9.000 5.500

Pontos (WDO - Área)


5.000
6.000
4.500
3.000
4.000
0
3.500
-3.000
3.000
-6.000
2.500
-9.000 2.000
-12.000 1.500
-15.000 1.000
-18.000 500

WDO M1 M2 M3 M4 M5 M6 CI-WDO

Fonte: Elaboração própria (2021)

Diante do que foi exposto, o critério adotado para a escolha do modelo de melhor
qualidade foi o resultado financeiro das operações conjuntas de compra e venda ao final do
período, apresentado na Tabela 4.3. Assim, é possível dizer que M5 é o melhor modelo, tanto
por ter gerado o maior ganho nas operações de compra, como também por ter gerado o menor
prejuízo nas operações de venda, o que resultou no maior saldo financeiro ao final do período,
quando realizadas operações de compra e venda.
Ao longo do período analisado, que vai de janeiro de 2019 a fevereiro de 2021, a
carteira derivada do M5 chegou a apresentar uma perda de R$ 4.185 em maio de 2020. Já o
ganho maior para o período foi de R$ 17.135 em dezembro de 2020.
O modelo M5 utilizou as variáveis preditoras originais padronizadas e foi otimizado a
partir da função perda hinge loss. Seus parâmetros de ajuste podem ser vistos na Tabela 4.313.

13 No Anexo A constam os gráficos que ilustram os resultados para Acurácia frente às alterações nos
parâmetros de ajuste.
34

Tabela 4.3 – Medidas de ajuste dos parâmetros de otimização para M5.


Parâmetros Intervalos
mtry 15
min_n 2
tree_depth 15
learn_rate 0,075
loss_reduction 0,075
sample_size 0,1
Fonte: Elaboração própria (2021)

Por fim, na Figura 4.214 estão as variáveis de maior importância relativa utilizadas nas
estimativas obtidas para M5. Dentre as dez mais importantes, não consta nenhuma 𝑀𝑀𝐸, bem
como nenhuma variável apurada nos extremos, isto é, com 1 ou 40 períodos. Prevaleceram entre
as mais importantes a 𝑀𝑀𝐴, com 6 variáveis, seguida pelo 𝐸𝑆𝑇𝑂𝐶, com 3 e o 𝑀𝐴𝐶𝐷.

Figura 4.2 – Variáveis preditoras mais importantes para o M5.

Fonte: Elaboração própria (2021)

14 A título de exemplo, a variável A.5.10 representa o cruzamento de uma MMA de 5 com uma MMA de
10 períodos. A variável EC.5 representa um ESTOC de 5 períodos. Este padrão de nomenclatura foi
o mesmo para o WDO e WIN.
35

4.2 Minicontrato do Ibovespa (WIN)

Os resultados apresentados na Tabela 4.4 conduzem a conclusões para o WIN


similares às obtidas para o WDO. As Acurácias (𝐴) para os dados de treino e teste são similares,
o que demonstra não haver sobreajuste dos modelos aos dados de treino. Os Valores Preditivos
Positivos (𝑉𝑃𝑃) e os Valores Preditivos Negativos (𝑉𝑃𝑁) dos modelos M7 e M9 se destacam
na Tabela 4.4, com médias de 59,4% e 54,3% respectivamente. Como isto sinaliza que, em
média, 59,4% das predições de alta são acertadas e 54,3% das indicações de baixa sejam
acertadas por estes modelos, fica a expectativa para os resultados financeiros destes modelos.

Tabela 4.4 – Medidas de qualidade do poder de classificação para o WIN.


Critério M7 M8 M9 M10 M11 M12
Acurácia – dados de treino (%) 52,7 51,8 53,2 52,0 52,6 52,5
Acurácia – dados de teste (%) 56,6 49,5 56,0 49,8 51,8 55,7
Sensibilidade (%) 47,6 62,1 45,3 54,1 53,5 63,5
Especificidade (%) 66,0 36,4 67,3 45,4 50,0 47,5
Valor Preditivo Positivo (%) 59,6 50,6 59,2 51,0 52,9 56,0
Valor Preditivo Negativo (%) 54,6 47,8 54,0 48,5 50,6 55,4
Fonte: Elaboração própria (2021)

A Tabela 4.5 confirma a expectativa gerada acerca dos desempenhos dos modelos M7
e M9, cujo resultado financeiro médio das operações de compra e venda foi de R$ 8.887.
Contudo, todos os demais modelos apresentaram resultados financeiros positivos ao final do
período, consequentes de resultados positivos tanto para as operações só de compra, como
também para as operações só de venda. Estes resultados ganham destaque quando comparados
aos obtidos pela CI-WIN, que gerou prejuízos financeiros nas operações só de compra e nas
operações só de venda, o que resultou em uma perda global superior a R$ 8 mil.

Tabela 4.5 – Resultados financeiros para o WIN.


Critério M7 M8 M9 M10 M11 M12 CI-WIN*
Só compra (R$) 4.772 3.556 5.342 1.637 5.927 5.281 -3.836
Só venda (R$) 3.545 2.329 4.115 410 4.700 4.054 -4.933
Compra e Venda (R$) 8.317 5.885 9.457 2.047 10.627 9.335 -8.769
Fonte: Elaboração própria (2021)
* Modelo Ingênuo para o minicontrato do Ibovespa (CI-WIN)
36

A Figura 4.3 ilustra que M7, M9 e M12 apresentaram comportamentos similares do


início ao final do período. O modelo M10 iniciou as operações com desempenho similar a eles,
mas, a partir de abril de 2020, o ativo de referência apresenta uma desvalorização acentuada e
M10 passa a apresentar desempenho inferior aos demais modelos. A CI-WIN inicia próxima às
demais carteiras, mas já a partir de novembro de 2019 começa a descolar para baixo, movimento
estre que se acentua em julho de 2020 e faz com que seu resultado seja o pior dentre os
analisados.
O M11 iniciou o período com o pior desempenho financeiro relativamente aos demais.
No entanto, também a partir de abril o M11 passa a apresentar ganhos, que resultam no melhor
desempenho financeiro global, o que o leva a ser classificado como o melhor modelo.

Figura 4.3 – Desempenho financeiro evolutivo para os modelos de WIN.


150.000
11.000
140.000
Compra e Venda - Linhas (R$ mil)

8.000 130.000
120.000

Pontos (WIN - Área)


5.000
110.000
2.000 100.000
90.000
-1.000
80.000
-4.000 70.000
60.000
-7.000
50.000
-10.000 40.000

WIN M7 M8 M9 M10 M11 M12 CI-WIN

Fonte: Elaboração própria (2021)

Ao longo do período analisado, a carteira derivada do M11 teve seu pior momento em
maio de 2019, quando a perda chegou a R$ 4.925. Já seu melhor momento coincide com o
período final de análise, em fevereiro de 2021, quando obteve o saldo positivo de R$ 10.627.
Assim como o M5 para o WDO, o M11 também utilizou as variáveis preditoras
originais padronizadas e foi otimizado a partir da função perda hinge loss, o que reforça a
37

percepção de que esta é a estratégia empírica mais eficiente para a modelagem dos dados desta
pesquisa. A Tabela 4.615 apresenta os parâmetros ótimos utilizados no ajuste de M11.

Tabela 4.6 – Medidas de ajuste dos parâmetros de otimização para M11.


Parâmetros Intervalos
mtry 8
min_n 51
tree_depth 2
learn_rate 0,562
loss_reduction 0,075
sample_size 0,1
Fonte: Elaboração própria (2021)

Como pode ser visto na Figura 4.4, todas as 6 variáveis preditoras do ESTOC estão
entre as dez de maior importância relativa para o M11. Das outras quatro, 3 são derivadas do
MMA e 1 é o próprio MACD. Assim como ocorreu com o melhor modelo para o WDO, não
apareceram MME na relação das variáveis mais importantes.

Figura 4.4 – Variáveis preditoras mais importantes para o M11.

Fonte: Elaboração própria (2021)

15 No Anexo A constam os gráficos que ilustram os resultados para Acurácia frente às alterações nos
parâmetros de ajuste.
38

5 CONSIDERAÇÕES FINAIS

Este trabalho teve por objetivo avaliar a capacidade de indicadores da Análise Técnica
preverem o comportamento do preço do mini Dólar Futuro e do mini Ibovespa a partir do uso
do XGBoost como modelo de classificação.
Neste contexto, em função dos tratamentos de dados realizados e das funções perda
utilizadas no processo de otimização do XGBoost, 6 diferentes modelos foram propostos para
cada um dos dois ativos estudados. A Acurácia média dos modelos desenvolvidos para WDO
foi de 50,5% e dos modelos desenvolvidos para WIN foi de 52,3%.
Estes resultados parecem limitados em um primeiro momento, especialmente por se
tratar de uma tarefa de classificação empregada em um contexto com duas classes de predição.
Contudo, não é incomum que as medidas de classificação decorrentes do uso de modelos de
aprendizado em um contexto de ativos financeiros sejam baixas. Teixeira e Oliveira (2010)
utilizaram KNN para analisar 15 ações do mercado brasileiro e obtiveram resultados para
Acurácia variando de 34,5% e 40,8%. Ainda assim, quando negociadas com base nos modelos
propostos pelos autores, 12 das 15 ações superaram a estratégia de benchmark adotada, sendo
que em 8 delas os ganhos financeiros excedentes foram superiores a 30%. Nobre e Neves (2019)
utilizaram o XGBoost para classificar ativos financeiros de diferentes mercados, alcançando
resultados para Acurácia variando entre 47,3% e 53,4%. Quanto ao resultado financeiro, em
média foi de 49,26%, ao passo seu benchmark lhes rendeu 32,41% de retorno médio.
Assim como em Teixeira e Oliveira (2010) e Nobre e Neves (2019), os resultados
financeiros de operações simuladas com os melhores modelos propostos nesta pesquisa não
refletem a expectativa gerada pelas medidas de Acurácia obtidas. No caso do WDO, M5
apresentou Acurácia de 50,1% e lucro financeiro de R$ 11.940, ao passo que o modelo
benchmark gerou prejuízo de R$ 15.135. Quanto ao WIN, a Acurácia do M11 foi 51,8% e o
resultado financeiro foi um lucro de R$ 10.627 obtido ao longo do mesmo período em que a
estratégia de benchmark gerou um prejuízo de R$ 8.769.
As operações somente de compra para o M5 do WDO resultaram em um lucro de
R$ 14.660, ao mesmo tempo em que as operações somente de venda geraram prejuízo de
R$ 2.720. O padrão se verifica não só para o M5, como também para todos os demais modelos
para o ativo, inclusive para a CI-WDO. Este resultado é coerente com o que foi obtido por
Brock et al. (1992), cujas operações de compra geraram retorno consistentemente superiores
aos resultados das operações de venda.
39

No caso do M11 de WIN, ganha destaque o fato de que tanto as operações somente de
compra (R$ 5.927) como as operações somente de venda (R$ 4.700) foram capazes de gerar
lucro, fugindo ao padrão verificado por Brock et al. (1992) e para o WDO.
Mediante ao que foi exposto, é possível afirmar que o uso combinado de indicadores
de Análise Técnica e do XGBoost é suficientemente capaz de classificar o comportamento dos
preços dos minicontratos de Dólar Futuro e do Ibovespa, a ponto de proporcionar resultados
financeiros positivos em operações que se baseiem nos modelos propostos para a tarefa.
Algumas das limitações da pesquisa estão em não contemplar os custos operacionais
nas negociações e supor que é possível realizar a negociações dos ativos pelos preços de
abertura e fechamento do mercado. Estas situações podem contribuir negativamente para o
resultado financeiro obtido. Contudo, em dias em que as classificações não tenham sido
realizadas corretamente, o fato de não operar com uma “trava” para limitar perdas – algo
comum nas operações de comprar e venda de ativos financeiros – pode ser entendido como uma
forma de, no mínimo, contrabalançar esta deficiência.
Por fim, ficam como sugestões de trabalhos futuros a realização de estudos que
utilizem outros indicadores da Análise Técnica, bem como indicadores que reflitam o
comportamento da economia nacional e mundial. Uma investigação e reflexão mais
aprofundada acerca das variáveis preditoras mais importantes nas construções dos modelos é
algo também pertinente de ser feito.
40

REFERÊNCIAS

ASSAF NETO, A. Mercado financeiro. São Paulo: Atlas, 2007.

B3. Futuro mini de taxa de câmbio de reais por dólar comercial. 2021. Disponível em:
http://www.b3.com.br/pt_br/produtos-e-servicos/negociacao/moedas/futuro-mini-de-taxa-de-
cambio-de-reais-por-dolar-comercial.htm. Acesso em: 27 de março de 2021.

B3. Futuro mini índice. 2021. Disponível em: http://www.b3.com.br/pt_br/produtos-e-


servicos/negociacao/renda-variavel/futuro-mini-de-ibovespa.htm. Acesso em: 13 de julho de
2021.

FUTURES INDUSTRY ASSOCIATION. Q2 2021 trends in futures and options trading.


2021. Disponível em: https://www.fia.org/resources/q2-2021-trends-futures-and-options-
trading. Acesso em: 07 de agosto de 2021.

BAO, D.; YANG, Z. Intelligent stock trading system by turning point confirming and
probabilistic reasoning. Expert Systems With Applications, v. 34, p. 620-627, 2008.

BAPTISTA, R. F. F.; PEREIRA, P. L. V. Análise do desempenho de regras de análise técnica


aplicada ao mercado intradiário do contrato futuro do índice bovespa. Revista Brasileira de
Finanças, v. 6, n. 2, p. 205-234, 2008.

BISOI, R.; DASH, P. K. A hybrid evolutionary dynamic neural network for stock market trend
analysis and prediction using unscented Kalmn filter. Applied Soft Computing. V. 19, p. 41-
56, 2014.

BOANAIN, P. G.; PEREIRA, P. L. V. “Ombro-cabeça-ombro”: testando a lucratividade do


padrã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.

BROCK, W.; LAKONISHOK, J. LEBARON, B. Simple technical trading rules and the
stochastic properties of stock returns. Journal of Finance, v. 47, n. 5, p. 1731-1764, 1992.

BRUCE, A.; BRUCE, P. Estatística prática para cientistas de dados. Rio de Janeiro; Alta
Books, 2019.

CHAGUE, F.; DE-LOSSO, R.; GIOVANNETTI, B. Day trade for a living? SSRN, 2011.
Disponível em: https://papers.ssrn.com/sol3/papers.cfm?abstract_id=3423101. Acesso em 31
de julho de 2021.

CHEN, T.; GUESTRIN, C. XGBoost: a scalable tree boosting system. In: PROCEEDINGS OF
THE 22nd ACM SIGKDD INTERNATIONAL CONFERENCE ON KNOWLEDGE
DISCOVERY AND DATA, 22, 2016, San Francisco. Anais [...]. New York, Association for
Computing Machinery, 2016.

CHEN, C.; K, Y.; HUANG, C.; CHEN, A. Applying market profile theory to forecast Taiwan
index futures market. Expert Systems With Applications, v. 41, p. 4617-4624, 2014.
41

COSTA, T. R. C. C.; NAZÁRIO, R. T.; BERGO, G. S. Z.; SOBREIRO, V. A.; KIMURA, H.


Trading system based on the use of technical analysis: a computational experiment. Journal of
Behavioral and Experimental Finance, v. 6, p. 42-55, 2015.

COWLES 3rd, A. Can stock market forecasters forecast? Econometrica, v. 1, n. 3, p.309-324,


1933.

EDWARDS, R. D.; MAGEE, J. Technical analysis of stock trends. New York: St. Lucie
Press, 2003.

ELLIS, C. A.; PARBERY, S. A. Is smarter better? A comparison of adaptative, and simple


moving average trading strategies. Research in International Business and Finance, v. 19, p.
399-411, 2005.

FAMA, E. F. The behavior of stock-market prices. Journal of Business, v. 38, n. 1, p.34-105,


1965.

FONG, W. M.; YOUNG, L. H. M. Chasing trends: recursive moving average trading rules and
internet stocks. Journal of Empirical Finance, v. 12, p. 43-76, 2005.

FONTELLES, M. J. Bioestatística aplicada à pesquisa experimental: volume 2. São Paulo:


Editora Livraria da Física, 2012.

FORTUNITY, E. J.; SMEDT, T.; MARTENS, D.; DAELEMANS, W. Evaluating and


understanding text-based stock price prediction models. Information Processing and
Management, v. 50, p. 426-441, 2014.

FOX, J. O mito dos mercados racionais: uma história de risco, recompensa e decepção em
Wall Street. Rio de Janeiro: Best Seller, 2010.

GEBKA, B.; HUDSON, R. S.; ATANASOVA, C. V. The benefits of combining seasonal


anomalies and technical trading rules. Finance Research Letters, v. 14, p. 36-44, 2015.

GUIMARÃES, D. P. G.; ARAÚJO, G. S.; BARBEDO, C. H. 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, 2011.

GUNASEKARAGE, A.; POWER, D. M. The profitability of moving average trading rules in


South Asian stock markets. Emerging Markets Review, v. 2, p. 17-33, 2001.

HASTIE, T.; TIBSHIRANI, R.; FRIEDMAN, J. The elements of statistical learning: data
mining, inference, and prediction. New York: Springer, 2009.

IZBICKI, R.; SANTOS, T. M. Aprendizado de máquina: uma abordagem estatística. São


Carlos: Rafael Izbicki, 2020.

KIRKPATRICK, C. D.; DAHLQUIST, J. R. Technical analysis: the complete resource for


financial market technicians. Upper Saddle River: FT Press, 2011.
42

KUHN, M; WICKHAM, H. Tidymodels: a collection of packages for modeling and


machine learning using tidyverse principles. 2020. Disponível em:
https://www.tidymodels.org. Acesso em: 27 de março de 2021.

LIN, X.; YANG, Z.; SONG, Y. Intelligent stock trading system based on improved technical
analysis and Echo State Network. Expert Systems With Applications, v. 34, p. 620-627, 2008.

LO, A. W.; MACKINLAY, A. C. Stocks market prices do not follow random walks: evidence
from a simple specification test. The Review of Financial Studies, v. 1, n. 1, p. 41-66, 1988.

MICROSOFT. Microsoft Excel 365. [S. L.] Microsoft Corporation, 2021.

MING-MING, L.; SIOK-HWA, L. The profitability of the simple moving averages and trading
range breakout in the Asian stock markets. Journal of Asian Economics, v. 17, p. 144-170,
2006.

MIZUNO, H.; MICHITAKA, K.; HIROSHI, Y. Application of neural network to technical


analysis of stock market prediction. Studies in Informatics and Control, v. 7, n. 2, p 111-120,
1998.

MURPHY, J. J. Technical analysis of the financial markets. New York: New York Institute
of Finance, 1999.

NAZÁRIO, R. T. F; SILVA, J. L.; SOBREIRO, V. A.; KIMURA, H. A literature review of


technical analysis on stock markets. The Quartely Review of Economics and Finance, v. 66,
p. 115-126, 2017.

NELOGICA. Profit Trade Clear. [S. L.] Nelogica, 2021.

NGUYEN, L. H.; HOLMES, S. Ten quick tips for effective dimensionality reduction. Plos
Computacionl Biology, v. 16, n. 6, 2019.

NOBRE, J.; NEVES, R. F. Combining principal component analysis, discrete wavelet


transform and XGBoost to trade in the financial markets. Expert Systems With Applications,
v. 125, p. 181-194, 2019.

NORONHA, M. Análise técnica: ferramentas estratégicas. São Paulo: Editec, 2006.

PARK, C.; IRWIN, S. H. What do we know about the profitability of technical analysis?
Journal of Economic Surveys, v. 21, n. 4, p.786-826, 2007.

PEMY, M. Optimal algorithms for trading large positions. Automatica, v. 48, p. 1353-1358,
2012.

PRADO, M. V. B. Métodos de análise de correspondência múltipla: estudo de caso


aplicado à avaliação da qualidade do café. 2012. 80 f. Dissertação de Mestrado (Mestrado
em Estatística e Experimentação Agropecuária). Universidade Federal de Lavras, Lavras, 2012.

R CORE TEAM. R: A Language and Environment for Statistical Computing. Vienna,


Austria, 2019.
43

RATNER, M.; LEAL, R. P. C. Tests of technical trading strategies in the emerging equity
markets of Latin America and Asia. Journal of Banking & Finance, v. 23, n. 12, p. 1887-
1905, 1999.

RHEA, R. The Dow theory. Colorado Springs: Fraser Publishing Company, 1932.

ROCHA, D. S. C. Aprendizado de máquina aplicado ao reconhecimento automático de


falhas em máquinas rotativas. 2018. 78 f. Dissertação de Mestrado (Mestrado em Engenharia
Elétrica). Universidade Federal de Minas Gerais, Belo Horizonte, 2018.

SAFFI, P. A. C. Análise técnica: sorte ou realidade? Revista Brasileira de Economia, v. 57,


n. 4, p. 953-974, 2003.

SANVICENTE, A. Z. Price-volume relationship in the Brazilian market, stock lending and


technical analysis. Revista Brasileira de Finanças, v. 13, n. 4, p. 630-649, 2016.

SILVA, I. N.; SPATTI, D. H.; FLAUZINO, R. A. Redes neurais artificiais: para engenharia
e ciências aplicadas. São Paulo: Artliber, 2010.

TACONELI, C. A. Árvores de classificação multivariadas fundamentadas em coeficientes


de dissimilaridade e entropia. 2008. 100 f. Tese de Doutorado (Doutorado em Agronomia).
Universidade de São Paulo. São Paulo, 2008.

TEIXEIRA, L. A.; OLIVEIRA, A. L. I. A method for automatic stock trading combining


technical analysis and nearest neighbor classification. Expert Systems With Applications, v.
37, p. 6885-6890, 2010.

THARAVANIJ, P.; SIRAPRAPASIRI, V.; RAJCHAMAHA, K. Performance of technical


trading rules: evidence from Southeast Asian stock markets. Springer Plus, v. 4, n. 1, p. 1-40, 2015.

TICKNOR, J. L. A Bayesian regularized artificial neural network for stock market forecasting.
Expert Systems With Applications, v. 40, p. 5501-5506, 2013.

VANDEWALLE, N.; AUSLOOS, M; BOVEROUX, P. The moving averages demystified.


Physica A, v. 269, p. 170-176, 1999.

VANSTONE, B. J.; CLARENCE, T. A survey of the application of soft computing to


investment and financial trading. In: PROCEEDINGS OF THE EIGHTH AUSTRALIAN AND
NEW ZEELAND INTELLIGENT INFORMATION SYSTEMS CONFERENCE, 8, 2003,
Sydney. Anais [...]. Brisbane, Queensland University of Technology, 2003.

VIDOTTO, R. S.; MIGLIATO, A. L. T.; ZAMBON, A. C. O moving average convergence-


divergence como ferramenta para a decisão de investimentos no mercado de ações. Revista de
Administração Contemporânea, v. 13, n. 2., p. 291-309, 2009.

ZHU, Y.; ZHOU, G. Technical analysis: na asset allocation perspective on the use of moving
averages. Journal of Financial Economics, v. 92, p. 519-544, 2009.

XGBOOST. XGBoost documentation. 2021. Disponível em:


https://xgboost.readthedocs.io/en/latest/index.html. Acesso em: 27 de março de 2021.
44

APÊNDICE A – RESULTADOS DA ACURÁRIA FRENTE ÀS ALTERAÇÕES DOS


PARÂMETROS DOS MELHORES MODELOS PARA WDO E WIN.

FIGURA I – Resultados da acurácia frente as alterações nos parâmetros de otimização do M5.

Fonte: Elaboração própria (2021)

FIGURA II – Resultados da acurácia frente as alterações nos parâmetros de otimização do M11.

Fonte: Elaboração própria (2021)


45

APÊNDICE B – SCRIPT DO TRATAMENTO DOS DADOS E DO XGBOOST.

###########################################################################
########################## PACOTES NECESSÁRIOS #########################
###########################################################################

library(tidymodels)
library(ggfortify)
library(GGally)
library(modeldata)
library(tidyverse)
library(funModeling)
library(vip)
library(janitor)
library(caTools)
library(glmnet)
library(MASS)
library(ca)
library(FactoMineR)
library(factoextra)
library(tidytext)
library(onehot)
theme_set(theme_bw())

###########################################################################
########################## PARALELIZAÇÃO ################################
###########################################################################

library(doParallel)
all_cores <- parallel::detectCores(logical = FALSE)
registerDoParallel(cores = all_cores)

###########################################################################
########################## INSERINDO OS DADOS ###########################
###########################################################################

dados <- read.csv("wdo_2c_pca - com 0 e 2.csv", sep =";",dec=".", header=T)

###########################################################################
########################## TREINO E TESTE #################################
###########################################################################

set.seed(2311)

dados_split <- initial_split(dados, strata = tend, prop = 0.8)

dados_treino <- training(dados_split)


dados_teste <- testing(dados_split)
46

###########################################################################
################################ PCA-BASE #################################
###########################################################################

#Comando para a PCA


dados_p <- recipe(tend ~ ., data = dados_treino) %>%
step_normalize(all_predictors()) %>%
step_pca(all_predictors(), threshold = 0.8)

dados_prep <- prep(dados_p, training = dados_treino);dados_prep

#Gerar banco de dados com as componentes mais importantes para utilizar no XGBoost
dados_pca <- bake(dados_prep, dados_treino)

###########################################################################
################################ MCA-BASE ################################
###########################################################################

#Separando a variável dependente


tend <- as.data.frame(dados_treino$tend)
colnames(tend)[1] <- "tend"
dados1 <- dados_treino[,-1]

#Comando para realizar a MCA


mca1 <- MCA(dados1, graph = F, ncp = 4)
mca1$eig

#Coletando as informações que serão utilizadas no XGBoost


mca <- mca1[["ind"]][["coord"]]
str(mca)
dados_mca <- cbind(tend,mca)
dados_mca <- as.data.frame(dados_mca)

###########################################################################
################################ CENTER E SCALE ##########################
###########################################################################

#Para fazer quando não utilizada PCA ou MCA

dados1 <- recipe(tend ~ ., data = dados_treino) %>%


step_center(-tend) %>%
step_scale(-tend) %>%
prep()

dados_cs <- juice(dados1)

###########################################################################
############################# VALIDAÇÃO CRUZADA #######################
###########################################################################
47

#Para fazer com PCA, MCA e VOP. O input deste comando recebe o que vem da MCA,
#PCA ou dos dados sem tratamento. É o banco de dados gerado por ele que
#alimentará o XGBoost

set.seed(2311)

dados_treino_vc <- vfold_cv(dados_pca, v = 10)

###########################################################################
################################# XGBOOST ################################
###########################################################################

##### Especificação do modelo


xgb <-
boost_tree() %>%
set_mode("classification") %>%
set_engine("xgboost", objective = "binary:hinge") %>% #("xgboost", objective =
"binary:hinge")
set_args(trees = 1000,
tree_depth = tune(),
min_n = tune(),
tree_depth = tune(),
loss_reduction = tune(),
sample_size = tune(),
mtry = tune(),
learn_rate = tune())

##### Grade dos hiperparâmetros


xgb_grid <-
grid_regular(
tree_depth(range(2, 15)),
min_n(range(2, 100)),
loss_reduction(range(-2, -0.25)),
sample_size = sample_prop(),
mtry(range(2,15)),
learn_rate(range(-2, -0.25)),
levels = c(3, 3, 3, 3, 3, 3)) #c(3, 3, 2, 3, 4, 2)

##### Workflow
xgb_wf <-
workflow() %>%
add_model(xgb) %>%
add_formula(tend ~ .)

xgb_tune <-
xgb_wf %>%
tune_grid(
resamples = dados_treino_vc,
metrics = metric_set(accuracy),
grid = xgb_grid,
48

control = control_grid(verbose = TRUE))

##### Gráfico do impacto das alterações nos parâmetros


xgb_tune %>%
collect_metrics() %>%
filter(.metric == "accuracy") %>%
dplyr::select(mean, mtry:sample_size) %>%
pivot_longer(mtry:sample_size,
values_to = "value",
names_to = "parameter"
) %>%
ggplot(., aes(x = value, y = mean, colour = parameter)) +
geom_point(show.legend = FALSE) +
facet_wrap(~ parameter, scales = "free") +
labs(x = NULL, y = "Acurácia") +
scale_colour_viridis_d()

##### Consultando o melhor ajuste


xgb_tune %>%
show_best("accuracy") %>%
relocate(mean, std_err, .before = mtry)

##### Selecionando Métricas


xgb_best <-
select_best(xgb_tune, metric = "accuracy")

xgb_best

##### Selecionando Melhor Workflow


xgb_best_wf <-
finalize_workflow(xgb_wf, xgb_best)

xgb_best_wf

#### Rodar o Melhor Workflow com Treino e Teste


xgb_final <-
last_fit(xgb_best_wf, split = dados_split)

xgb_final %>% collect_metrics()

###Matriz de Confusão
xgb_final %>% unnest(.metrics)
xgb_final %>%
unnest(.predictions) %>%
conf_mat(truth = tend, estimate = .pred_class)

####Finalizando o modelo geral


xgb_geral <-
fit(xgb_best_wf, data = dados)
49

####Variáveis Mais Importantes


xgb_best_wf %>%
fit(data = dados_treino) %>%
pull_workflow_fit() %>%
vip(geom = "point", scale = T) +
labs(x = "Variáveis", y = "Importância Relativa")

##### Salvando o Modelo


save.image(file = "M13.RData")

###########################################################################
################################# PREDIÇÃO ###############################
###########################################################################

carteira <- read.csv("wdo_carteira.csv", sep =";",dec=".", header=T)

tend <- predict(xgb_geral, new_data = carteira)

write.csv(tend, "p13.csv", row.names = FALSE)

Você também pode gostar