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

O que é e como funcionam Sistemas Multi-Agentes

Sistemas multi-agentes (MAS) representam uma nova forma de estruturar aplicações de inteligência artificial, especialmente úteis para lidar com problemas complexos e distribuídos. Em vez de depender de um único agente generalista, esses sistemas são compostos por múltiplos agentes especializados que colaboram, competem ou se coordenam para executar tarefas específicas. Neste post, explicamos o que são os MAS, seus principais componentes (como LLMs, ferramentas e processos) e as arquiteturas mais comuns.

O que é um Vector Database e como criar um com LangChain

Nesta postagem, mostramos como construir um pipeline simples de RAG (Retrieval-Augmented Generation) usando o LangChain, o modelo Gemini 2.0 Flash e o Vector Database Chroma. Utilizamos como exemplo o Relatório de Inflação de junho de 2025 do Banco Central do Brasil. O fluxo envolve o download e leitura do PDF, divisão do texto com RecursiveCharacterTextSplitter, geração de embeddings com Gemini, armazenamento vetorial com Chroma e busca semântica para responder perguntas com base no conteúdo do relatório. É uma aplicação prática e didática para economistas que desejam integrar IA ao seu fluxo de análise.

Automatizando a Construção de Códigos em Python com LangGraph

Neste post, mostramos como construir um agente de código em Python utilizando LangGraph, LangChain e Gemini. A proposta é construir um protótipo para automatizar o ciclo completo de geração, execução e correção de código com o uso de LLMs, organizando o processo em um grafo de estados.

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.