Inteligência Artificial no mercado financeiro

De forma que se possa tomar as melhores decisões de investimento, realiza-se cálculos numéricos complexos de forma que possamos mitigar o risco ou maximizar o retorno. E para caso não queiramos utilizar métodos numéricos? Podemos utilizar nosso conhecimento subjetivo para tomar as decisões. Apesar de complicado para a mente humana, é possível criarmos uma inteligência que segue uma lógica qualitativa e pode auxiliar na criação de uma estratégia de investimento. No post de hoje, mostramos como podemos obter isso através do lógica fuzzy no Python.

 

O objetivo do uso da lógica fuzzy aqui será de traduzir o que os números dizem por meio de palavras, utilizando uma lógica e um aditivo. Iremos utilizar como exemplo o preço e o volume de negociações da ITUB4. A transformação da lógica pode ser obtida como:

  • SE (preço ~ barato) E (volume ~ baixo) ENTÃO (decisão ~ comprar)
  • SE (preço ~ barato) E (volume ~ alto) ENTÃO (decisão ~ comprar)
  • SE (preço ~ ideal) E (volume ~ baixo) ENTÃO (decisão ~ comprar)
  • SE (preço ~ ideal) E (volume ~ ideal) ENTÃO (decisão ~ manter)
  • SE (preço ~ ideal) E (volume ~ alto) ENTÃO (decisão ~ vender)
  • SE (preço ~ caro) E (volume ~ alto) ENTÃO (decisão ~ vender)

Através dessa lógica, podemos construir uma estratégia de investimento em um dado horizonte de tempo. Para isso, utilizaremos algumas biblioteca a nosso favor.

O primeiro passo será obter os dados do preço de fechamento e do volume do ativo. Utilizamos como janela o período entre 2021 e março de 2022. Como queremos construir uma lógica de subjetiva de baixo, ideal e alto, devemos entender através dos dados, calculandos o valores médios, o desvio padrão, os valores mínimos e máximos, bem como os quintis de 25% e 75%.

Definido os valores, montamos a lógica.

Construímos a função de pertinência (que nos auxiliará na construção dos pontos de decisão de compra, venda e manter). Aqui selecionamos o espaço dos dados.

Veja que em alguns pontos utilizamos a criação na "mão" (para as decisões e vol) ao invés dos valores dos quantis da média, isto por conta da quantidade de memória utilizada pelo código. Como forma de exemplificar, utilizamos dados não tão próximos da realidade.

Com o código abaixo, realizamos a fuzzificação da nossa lógica, construídos os pontos das regras da estratégia.

Com as regras em mãos, o que devemos é iterar em cada ponto de tempo a decisão baseada na lógica construída.

Com o código acima, obtemos os pontos de cada decisão criado pela estratégia salvo no objeto dec_fuzzy.

 

Por fim, visualizamos o gráfico com os pontos de cada decisão da estratégia. A infelicidade aqui está que visualmente é possível ver que há somente pontos de compra, o que pode ser irreal, devido ao fato de que utilizamos uma aproximação da distribuição do dados por conta de gargalos computacionais.

Referências

Caetano, M. A. L. (2021). Python e mercado financeiro: Programação para estudantes, investidores e analistas. Brasil: Editora Blucher.

Veja mais sobre nossos cursos aplicado para R e Python!

Nossos cursos oferecem o conhecimento necessário para que você possa adentrar no mundo da Análise de dados e consiga por em prática os seus códigos. Veja todos nossos cursos de Data Science aqui.

 

Compartilhe esse artigo

Facebook
Twitter
LinkedIn
WhatsApp
Telegram
Email
Print

Comente o que achou desse artigo

Outros artigos relacionados

Como selecionar variáveis para modelos de previsão no Python?

Em oposição à crença popular, grande parte dos modelos de machine learning não produzem previsões magicamente. É papel do cientista de dados executar uma boa engenharia de variáveis para não cair no clássico problema de “garbage in, garbage out” (GIGO) em aprendizado de máquina. Neste sentido, aprender a fazer uma boa seleção de variáveis é fundamental e neste artigo exploramos algumas possibilidades práticas usando o Python.

Resultado IPCA-15 - Novembro/2024

A Análise Macro apresenta os resultados do IPCA-15 de Novembro de 2024, com gráficos elaborados em Python para coleta, tratamento e visualização de dados. Todo o conteúdo, disponível exclusivamente no Clube AM, foi desenvolvido com base nos métodos ensinados nos cursos da Análise Macro, permitindo aos assinantes acesso aos códigos e replicação das análises.

Resultado PNADc Trimestral - 3° Trimestre/2024

A Análise Macro apresenta os resultados da PNADc Trimestral do 3º trimestre de 2024, com gráficos elaborados em Python para coleta, tratamento e visualização de dados. Todo o conteúdo, disponível exclusivamente no Clube AM, foi desenvolvido com base nos métodos ensinados nos cursos da Análise Macro, permitindo aos assinantes acesso aos códigos e replicação das análises.

Boletim AM

Receba diretamente em seu e-mail gratuitamente nossas promoções especiais e conteúdos exclusivos sobre Análise de Dados!

Boletim AM

Receba diretamente em seu e-mail gratuitamente nossas promoções especiais e conteúdos exclusivos sobre Análise de Dados!

como podemos ajudar?

Preencha os seus dados abaixo e fale conosco no WhatsApp

Boletim AM

Preencha o formulário abaixo para receber nossos boletins semanais diretamente em seu e-mail.