Engenharia De Software
08 de outubro de 2026
Pipeline de dados para o monitoramento de ações considerando a metodologia fundamentalista
Pipeline de Dados para o Monitoramento de Ações Considerando a Metodologia Fundamentalista
Leonardo Gomes Maciel; Arthur Pinheiro de Araújo Costa
DOI: 10.22167/2675-6528-202603142
Artigo derivado de Trabalho de Conclusão de Curso (TCC), com conteúdo baseado no trabalho original do aluno e adaptado ao formato editorial da Revista E&S com apoio da ferramenta ResumeAI, solução de inteligência artificial desenvolvida pelo Instituto Pecege para síntese e organização textual.
Resumo
O cenário financeiro brasileiro enfrenta desafios como o endividamento familiar, a baixa literacia financeira e a descentralização de informações para análise de investimentos. Diante disso, o objetivo da pesquisa consistiu em desenvolver um pipeline de dados financeiros, fundamentado em boas práticas de Engenharia de Dados, para estruturar, processar e disponibilizar informações relevantes que apoiassem a tomada de decisão de investidores individuais na análise de ações. Implementou-se uma arquitetura medalhão, utilizando MinIO S3 para armazenamento em camadas bronze, silver e gold, com Delta Lake para governança de dados. Empregou-se Apache Spark para processamento distribuído, Prometheus para monitoramento e Power BI para visualização analítica. Os dados foram majoritariamente demonstrações financeiras da Comissão de Valores Mobiliários (CVM). Construiu-se uma carteira teórica de investimentos com base nos princípios de Benjamin Graham (2017), aplicando filtros de seleção e validação de dados. Os resultados indicaram um retorno positivo de 32,88% para a carteira teórica, superando o índice Ibovespa (4,25%) no período de 2021 a 2024, embora inferior à taxa Selic (46,96%). Qualitativamente, o pipeline processou conjuntos de dados volumosos, com reduções significativas de redundâncias, como 99,27% na tabela BPA e 94,29% na DRE, após a aplicação de filtros. Evidenciaram-se ganhos em organização, rastreabilidade e qualidade dos dados, possibilitando análises financeiras estruturadas e mais robustas.
Palavras-chave: Arquitetura Medalhão; Engenharia de Dados; Investimentos; Pipeline de Dados.
1. Introdução
O cenário econômico brasileiro atual é marcado por desafios significativos, como o aumento do endividamento das famílias e a persistente falta de letramento financeiro. Em setembro de 2025, o Brasil registrou 78,2 milhões de pessoas em situação de inadimplência, um crescimento de 5,6% em relação ao ano anterior (Serasa, 2025). Este problema não é recente e já foi abordado em estudos anteriores que destacam a necessidade da educação financeira para a qualidade de vida dos indivíduos (Campos, Teixeira e Coutinho, 2015). Organizações como a Organização para a Cooperação e Desenvolvimento Econômico (OCDE) têm promovido programas de letramento e capacidade financeira, visando desenvolver habilidades essenciais para a tomada de decisões fundamentadas (Hoffman; Moro, 2012). As recomendações da OCDE abrangem temas como planejamento financeiro pessoal, seguros, poupança, investimentos e endividamento (Campos; Teixeira; Coutinho, 2015).
Neste contexto, o investimento financeiro emerge como um tema de grande relevância. A análise fundamentalista, conforme apresentada por Benjamin Graham (1949) em sua obra “O Investidor Inteligente”, propõe um método para avaliar empresas com base em seu valor intrínseco, auxiliando na seleção de ativos sólidos com potencial de crescimento. Um investidor que adota a abordagem fundamentalista busca minimizar riscos ao focar em ativos consolidados no mercado financeiro, considerando o histórico e o cenário da empresa (Freitas, 2020).
Apesar da importância dos investimentos, o mercado de capitais apresenta complexidades. A Bolsa de Valores do Brasil (B3) lista mais de 400 ações, entre ordinárias, preferenciais e units (InfoMoney, 2025). No entanto, as informações fundamentais necessárias para uma análise aprofundada estão frequentemente descentralizadas, o que demanda tempo e esforço consideráveis dos investidores (Montóia, 2021). Para superar essa dificuldade e garantir que as informações sejam distribuídas de forma eficiente, a implementação de um pipeline de dados torna-se essencial. Este conceito abrange as etapas desde a extração de dados brutos de diversas fontes até o carregamento em seu destino (Densmore, 2021), com a escolha das tecnologias variando conforme o contexto e a maturidade do engenheiro de dados.
Diante da necessidade de conhecimentos técnicos que englobam tanto a área de finanças quanto a de tecnologia, e para mitigar a problemática da descentralização das informações e apoiar a tomada de decisão de investidores individuais, o objetivo geral deste trabalho é desenvolver um pipeline de dados automatizado para análise fundamentalista de ações brasileiras, aplicando a metodologia de Benjamin Graham (2019).
2. Material e Métodos
A pesquisa realizada caracterizou-se como uma pesquisa-ação, com abordagem quali-quantitativa, focada no desenvolvimento de um pipeline de dados aplicado ao mercado financeiro. O objetivo central foi estruturar, processar e disponibilizar informações para apoiar a tomada de decisão de investidores individuais na análise fundamentalista de ações brasileiras. O estudo limitou-se à avaliação do mercado de capitais, sem aprofundar em análises macroeconômicas ou microeconômicas setoriais, conforme a metodologia de Benjamin Graham (2019).
No âmbito dos investimentos, adotou-se a análise fundamentalista, que busca avaliar empresas com base em seu valor intrínseco. Para a seleção de ativos, foram aplicados critérios específicos, como a ausência de prejuízos no período analisado, um produto entre Preço/Lucro (P/L) e Preço/Valor Patrimonial por Ação (P/VPA) inferior a 22,5, a distribuição de dividendos e uma liquidez corrente não inferior a 1 (Silva, 2020; Assaf, 2018). Esses critérios visaram identificar empresas sólidas e com potencial de crescimento, alinhadas ao perfil de um investidor defensivo.
A metodologia de engenharia de dados envolveu a construção de um pipeline de dados, seguindo as boas práticas da área e a arquitetura medalhão (Strengholt, 2025). Esta arquitetura organiza os dados em três camadas distintas: bronze, silver e gold, visando aprimorar a estrutura, qualidade e validação das informações ao longo do processo. A implementação foi realizada utilizando a linguagem Python 3.11 (Luna, 2025), com o uso de containers Docker para garantir portabilidade e reprodutibilidade do ambiente.
A etapa de ingestão de dados, correspondente à camada bronze, concentrou-se na coleta de informações brutas de diversas fontes. Os dados foram extraídos do site Fundamentus, por meio de web scraping, e da Comissão de Valores Mobiliários (CVM), através de downloads de arquivos ZIP, abrangendo o período de 2020 a 2024. Utilizou-se o módulo “ingest.py”, com a superclasse “MultiSourceIngestion” e as classes “FundamentusIngestion” e “CVMIngestion”, para gerenciar a coleta e o armazenamento inicial no MinIO S3.
Os documentos da CVM incluíram Formulários Cadastrais (FCA), Formulários de Demonstrações Financeiras Padronizadas (DFP) – contendo Balanço Patrimonial Ativo (BPA), Balanço Patrimonial Passivo (BPP), Demonstração de Fluxo de Caixa (DFC-MD e DFC-MI), Demonstração das Mutações do Patrimônio Líquido (DMPL), Demonstração de Resultado Abrangente (DRA), Demonstração de Resultado (DRE) e Demonstração de Valor Adicionado (DVA) – e Formulários de Referência (FRE). Os dados foram armazenados em formato bruto, com codificação original (iso-8859-1) e metadados em JSON, organizados hierarquicamente por fonte, tipo de arquivo, identificadores e data de extração.
Na camada silver, os dados brutos foram submetidos a processos de tratamento e normalização para garantir qualidade e consistência. Utilizou-se PySpark para o processamento distribuído, conectando Python ao Spark. As atividades incluíram a remoção de dados duplicados, tratamento de informações nulas, padronização de nomenclatura e formato, e detecção de anomalias. Para a validação da qualidade dos dados, implementou-se o módulo “run_metrics.py” com a classe “SilverQualityValidator”, que executou verificações de integridade e precisão.
Os tratamentos específicos aplicados na camada silver envolveram a conversão de escala monetária, normalização de CNPJ, filtragem inteligente para manter apenas contas consolidadas relevantes para a análise fundamentalista, tratamento de encoding, deduplicação de registros, conversão de tipos de dados (strings para DoubleType e DateType), trimming de espaços e remoção de linhas vazias. Essas etapas foram cruciais para refinar os dados e prepará-los para análises mais robustas, eliminando inconsistências e redundâncias.
A camada gold foi dedicada à modelagem e disponibilização dos dados para consumo final. Adotou-se a modelagem dimensional “Star Schema” (Strengholt, 2025), que organiza os dados em tabelas de fatos e dimensões. As dimensões incluíram tempo, empresa e tipo de ação, enquanto as tabelas de fatos contemplaram balanço, capital social, cotação, dividendos e demonstração de resultado. Para a visualização analítica das informações tratadas, utilizou-se o Power BI Desktop (Ehrenmueller-Jensen, 2024).
As principais ferramentas e bibliotecas Python empregadas no desenvolvimento do pipeline incluíram MinIO S3 para armazenamento de objetos, Apache Spark para processamento distribuído, Prometheus (Jani, 2024) para monitoramento e observabilidade, e Delta Lake para governança de dados, garantindo transações ACID, versionamento e evolução de esquemas. Outras bibliotecas Python, como `requests`, `python-dateutil`, `lxml`, `pandas` e `python-dotenv`, foram utilizadas para extração, manipulação e gerenciamento de dados.
A construção da carteira teórica de investimentos seguiu um processo de filtragem rigoroso. Iniciou-se com um universo de 323 empresas, das quais 91 estavam listadas no índice Ibovespa em 2021. Após a aplicação dos filtros de Benjamin Graham, 47 ações foram consideradas elegíveis. Destas, selecionaram-se 5 ações, priorizando a diversificação setorial. Os dados de cotações médias trimestrais foram obtidos da tabela FATO_COTACAO na camada gold, e os proventos da plataforma Status Invest.
Para o cálculo do retorno percentual da carteira teórica, considerou-se a cotação média do primeiro trimestre de 2021 e a cotação do último dia útil de 2024. Os proventos foram contabilizados com base no último ano da análise (2024) e redistribuídos proporcionalmente aos demais anos para uniformizar o tratamento dos fluxos de rendimento. A fórmula utilizada para o cálculo do retorno percentual foi: (Preço Médio da Ação no ano de análise – Preço da Ação no último ano analisado + (quantidade de anos analisadas * Proventos do último ano analisado)) / Preço da Ação no último ano analisado.
3. Resultados e Discussão
A presente seção detalha os resultados obtidos com o desenvolvimento e a aplicação de um pipeline de dados financeiros, concebido para estruturar, processar e disponibilizar informações cruciais para a análise fundamentalista de ações brasileiras. O estudo demonstrou a eficácia da arquitetura implementada tanto na organização e qualidade dos dados quanto no suporte à tomada de decisão de investidores individuais, conforme a metodologia de Benjamin Graham (2019). Os achados quantitativos e qualitativos evidenciam ganhos significativos em rastreabilidade, consistência e capacidade analítica, superando desafios inerentes à descentralização de informações no mercado de capitais.
A arquitetura do pipeline foi concebida seguindo o padrão medalhão, que organiza os dados em camadas distintas: bronze, silver e gold, dentro de um ambiente de data lakehouse. Esta abordagem visa aprimorar progressivamente a estrutura, qualidade e validação das informações desde sua forma bruta até o estágio de refinamento para consumo analítico (STRENGHOLT, 2025). A implementação utilizou containers Docker para assegurar portabilidade e reprodutibilidade, integrando ferramentas essenciais do ciclo de vida da engenharia de dados, como Python para ingestão, MinIO para armazenamento de objetos, Apache Spark para processamento distribuído e Prometheus para observabilidade.
A etapa de ingestão de dados, correspondente à camada bronze, focou na coleta de informações de duas fontes principais: o site Fundamentus e a Comissão de Valores Mobiliários (CVM). Os dados do Fundamentus, obtidos via web scraping, e os da CVM, por meio de downloads de arquivos ZIP, foram armazenados em sua forma bruta (“as-is”) no MinIO S3, preservando a codificação original e acompanhados de metadados detalhados. Estes metadados, organizados em um dicionário, incluíam a fonte, tipo de ativo, data e hora de extração, detalhes técnicos da requisição HTTP, formato e tamanho do arquivo, e a versão do ingestor, garantindo rastreabilidade e auditoria (STRENGHOLT, 2025).
A organização dos diretórios na camada bronze foi estruturada hierarquicamente, considerando a fonte de ingestão, o tipo de arquivo, identificadores por ação ou ano do documento, e a data e hora da extração. Essa abordagem permitiu uma gestão eficiente dos dados brutos e a possibilidade de reprocessamentos pontuais. Contudo, observou-se que o acesso ao histórico de balanços financeiros do site Fundamentus tornou-se inviável devido à implementação de um sistema de captcha, o que inviabilizou seu uso contínuo no script de ingestão.
Em contraste, a CVM demonstrou ser uma fonte robusta e viável, disponibilizando dados consolidados de balanços financeiros segmentados por ano e permitindo automações. Os documentos armazenados na camada bronze do MinIO incluíram Informações Cadastrais (CNPJ, data de registro), Formulários Cadastrais (FCA) com códigos de negociação, e Formulários de Demonstrações Financeiras Padronizadas (DFP). Estes últimos abrangem Balanço Patrimonial Ativo (BPA), Balanço Patrimonial Passivo (BPP), Demonstrações de Fluxo de Caixa (DFC-MD e DFC-MI), Demonstração das Mutações do Patrimônio Líquido (DMPL), Demonstração de Resultado Abrangente (DRA), Demonstração de Resultado (DRE) e Demonstração de Valor Adicionado (DVA), além do Formulário de Referência (FRE) com informações abrangentes sobre o emissor.
O tratamento dos dados e o processamento distribuído ocorreram na camada silver, onde a classe `CVMSilverProcessor` utilizou PySpark para transformar os dados brutos. Esta etapa foi fundamental para resolver inconsistências e redundâncias presentes nos dados da CVM. Muitas demonstrações financeiras, por exemplo, apresentavam resultados duplicados para o ano de referência e o ano anterior, o que gerava informações redundantes e cálculos inconsistentes. A exclusão dessas informações duplicadas na camada silver resultou em economia de espaço e maior consistência dos dados para análises futuras.
A eficiência do script de tratamento de dados na camada silver foi quantificada por meio de métricas de qualidade. Na tabela DRE, das 32644 linhas originais na camada bronze, foram mantidas 1864 linhas na camada silver, representando uma redução de 94,29%. Para a tabela BPA, das 60741 linhas, 444 foram preservadas, indicando uma redução de 99,27%. Similarmente, na tabela BPP, de 104017 linhas, 910 foram mantidas, resultando em uma redução de 99,13%. Esses resultados demonstram a capacidade do pipeline em eliminar redundâncias e dados irrelevantes, otimizando o volume de informações para análise.
Outros conjuntos de dados também apresentaram reduções significativas: o volume de valores mobiliários teve uma redução de 51,62% (de 4636 para 2243 linhas), e o capital social, de 65,70% (de 3606 para 1237 linhas). Em contrapartida, o conjunto de dados de distribuição de dividendos manteve seu volume integral (1503 linhas), sugerindo uma consistência intrínseca desde a origem. A análise comparativa entre as camadas bronze e silver, portanto, não apenas evidencia a redução de volume, mas também a garantia da confiabilidade das informações apresentadas para as etapas subsequentes de análise.
Na camada gold, para o carregamento e disponibilização dos dados ao usuário final, foi adotada a modelagem dimensional conhecida como “Star Schema”. Este padrão é amplamente utilizado em Business Intelligence para facilitar a visualização analítica e o desenvolvimento de dashboards, como o implementado no Power BI. Os dados foram organizados em tabelas de dimensão, como `DIM_TEMPO` para controle temporal, `DIM_EMPRESA` para categorização das ações e `DIM_TIPO_ACAO` para os códigos de mercado financeiro. As tabelas fato, por sua vez, incluíram `FATO_BALANÇO` (ativos e passivos circulantes, patrimônio líquido), `FATO_CAPITAL_SOCIAL` (quantidade de ações ordinárias e preferenciais), `FATO_COTACAO` (valores monetários de compra de ações) e `FATO_DIVIDENDOS` e `FATO_DRE` para cálculos de lucro líquido e proventos.
A construção da carteira teórica de investimentos seguiu a metodologia de Benjamin Graham (2019), focando em um investidor defensivo. Inicialmente, das 323 empresas negociadas em 2021, conforme dados da CVM, 91 estavam listadas no Ibovespa do mesmo ano. A aplicação dos filtros de Graham, que incluíam critérios como P/L x P/VP inferior a 22,5, liquidez corrente não inferior a 1, ausência de prejuízos e distribuição de dividendos, resultou em 47 ações elegíveis. Para diversificar a carteira e mitigar riscos, foram selecionadas cinco ações: ELETROBRAS (AXIA3), PORTO SEGURO AS (PSSA3), MARFRIG (MBRF3), SIMPAR S.A (SIMH3) e BRASILAGRO (AGRO3).
O retorno percentual da carteira teórica foi calculado considerando a cotação média das ações no primeiro trimestre de 2021 e no último dia útil de 2024, além dos proventos distribuídos no último ano da análise (2024), redistribuídos proporcionalmente para padronização metodológica. A fórmula utilizada foi: Retorno (%) = (Preço Médio da Ação no ano de análise – Preço da Ação no último ano analisado + (quantidade de anos analisadas * somatório de proventos do último ano analisado)) / Preço da Ação no último ano analisado. Este cálculo permitiu uma avaliação consistente do desempenho da carteira ao longo do período.
Os resultados financeiros da carteira teórica, no período de janeiro de 2021 a dezembro de 2024, indicaram um retorno positivo de 32,88%. Em comparação, o índice Ibovespa registrou um retorno de 4,25% no mesmo período, enquanto a taxa Selic acumulada atingiu 46,96%. A carteira teórica, portanto, superou significativamente o Ibovespa, demonstrando a eficácia da metodologia de Graham na seleção de ativos com potencial de valorização. No entanto, o retorno da carteira ficou abaixo da taxa Selic, que apresentou um desempenho superior no período analisado.
A volatilidade do mercado no período de 2021 a 2024, influenciada por eventos como a pandemia de COVID-19, pode explicar a diferença em relação à Selic. A taxa Selic, que variou de 1,90% em 2021 para 12,15% em 2024, reflete um cenário atípico de juros altos, tornando-se uma opção de investimento mais rentável em comparação com a carteira de ações. É importante ressaltar que os indicadores fundamentalistas, embora úteis, não garantem retornos futuros e devem ser complementados por uma análise macro e microeconômica mais ampla, além de uma diversificação adequada do portfólio, evitando a alocação de 100% dos recursos em ações (GRAHAM, 2019).
Em síntese, o pipeline de dados desenvolvido atendeu plenamente aos objetivos propostos, consolidando informações de diversas empresas e segmentando-as conforme a arquitetura medalhão. Isso permitiu a análise tanto de dados brutos quanto de dados tratados, facilitando a identificação de inconsistências e aprimorando a qualidade das informações. A carteira teórica, construída com base na metodologia de Benjamin Graham, demonstrou um retorno superior ao Ibovespa, validando a abordagem fundamentalista como uma ferramenta valiosa para investidores individuais, apesar de ter sido superada pela taxa Selic em um período de mercado atípico.
4. Conclusão
O presente estudo teve como objetivo desenvolver um pipeline de dados financeiros automatizado para a análise fundamentalista de ações brasileiras, aplicando a metodologia de Benjamin Graham. Verificou-se a implementação bem-sucedida de uma arquitetura medalhão, que utilizou MinIO S3 para armazenamento em camadas bronze, silver e gold, Apache Spark para processamento distribuído, Prometheus para monitoramento e Power BI para visualização analítica. Os dados, majoritariamente demonstrações financeiras da CVM, foram processados com ganhos significativos em organização, rastreabilidade e qualidade, evidenciados por reduções de redundâncias de 99,27% na tabela BPA e 94,29% na DRE. A carteira teórica de investimentos, construída com base nos princípios de Graham, apresentou um retorno positivo de 32,88% no período de 2021 a 2024, superando o índice Ibovespa (4,25%) e demonstrando a viabilidade da abordagem fundamentalista para investidores individuais.
Apesar dos resultados promissores, o estudo enfrentou limitações, como a inviabilidade de acesso a dados históricos do site Fundamentus devido a sistemas de captcha, o que restringiu as fontes de ingestão. Adicionalmente, embora a carteira teórica tenha superado o Ibovespa, seu retorno foi inferior à taxa Selic (46,96%) no período analisado, um cenário influenciado por juros altos e volatilidade atípica do mercado, reforçando que indicadores fundamentalistas devem ser complementados por análises macroeconômicas e diversificação. Para estudos futuros, sugere-se a implementação de um orquestrador para agendamento automatizado e a incorporação do Grafana para visualização de métricas, visando aprimorar a observabilidade. Recomenda-se também a expansão da aplicação do pipeline para outros mercados de capitais, como ações internacionais, fundos imobiliários e criptoativos, e a integração com fontes de dados adicionais, como a B3.
Referências Bibliográficas
ASSAF NETO, Alexandre. Mercado financeiro. 14. ed. São Paulo: Atlas, 2018. ISBN-978-85-97-01805-9.
CAMPOS, Celso Ribeiro; TEIXEIRA, James; COUTINHO, Cileda de Queiroz e Silva. Reflexões sobre a educação financeira e suas interfaces com a educação matemática e a educação crítica. Educação Matemática em Pesquisa, São Paulo, v. 17, n. 3, p. 556–577, 2015. III Fórum de Discussão: Parâmetros Balizadores da Pesquisa em Educação Matemática no Brasil.
DENSMORE, James. Data pipelines pocket reference: moving and processing data for analytics. 1. ed. Sebastopol: O’Reilly Media, 2021.
EHRENMUELLER-JENSEN, Markus. Data Modeling with Microsoft Power BI. Sebastopol: O’Reilly Media, 2024.
FREITAS, Lucas Catunda de. Uma análise fundamentalista do setor bancário: um estudo de caso com uma seleção de indicadores. 2020. Trabalho de Conclusão de Curso (Graduação em Finanças) Universidade Federal do Ceará, Faculdade de Economia, Administração, Atuária e Contabilidade, Fortaleza, 2020.
GRAHAM, Benjamin. O investidor inteligente. São Paulo: HarperCollins, 2019.
Hoffman; Moro, 2012 [Referência completa não encontrada no documento original]
INFOMONEY. Ações B3: cotação de hoje. Disponível em: https://www.infomoney.com.br/cotacoes/b3/acao/. Acesso em: 17 set. 2025.
JANI, Yash. Unified Monitoring for Microservices: Implementing Prometheus and Grafana for Scalable Solutions. Journal of Artificial Intelligence, Machine Learning and Data Science, v. 2, n. 1, 2024. ISSN 2583-9888. DOI: https://doi.org/10.51219/JAIMLD/yash-jani/206.Disponível em: https://urfpublishers.com/journal/artificial-intelligence. Acesso em: 5 fev. 2026.
LUNA, Pedro Henrique Santiago de. Pipeline de dados para análise epidemiológica de casos sobre transtornos mentais relacionados ao trabalho no Brasil. Trabalho de Conclusão de Curso (Bacharelado em Sistemas de Informação) – Universidade Federal de Pernambuco, Recife, 2025.
Montóia, 2021 [Referência completa não encontrada no documento original]
Serasa, 2025 [Referência completa não encontrada no documento original]
SILVA JÚNIOR, João Fernandes da. Aplicação das estratégias de Benjamin Graham no mercado acionário brasileiro. 2020. Trabalho de Conclusão de Curso (Graduação em Ciências Contábeis) Faculdade de Ciências Contábeis, Universidade Federal de Uberlândia, Uberlândia, 2020.
STRENGHOLT, Piethein. Building medallion architectures. Sebastopol, CA: O’Reilly Media, 2025.
Artigo oriundo de Trabalho de Conclusão de Curso da Especialização em Engenharia de Software do MBA USP/Esalq
Para saber mais sobre o curso, clique aqui e acesse a plataforma MBX Academy

