Tutorial 18 abr 2026 8 min de leitura

P/L (Preço/Lucro): Como Calcular e Acessar via API da B3 em Python

por bolsai · 18 de abril de 2026 · 8 min de leitura

O P/L (Preço/Lucro) continua sendo o múltiplo mais citado na análise fundamentalista brasileira. O texto apresenta a fórmula, a metodologia TTM adotada pela API P/L da bolsai e exemplos para calcular pl python em qualquer ação da B3, incluindo um screening por múltiplo baixo combinado com ROE alto.

O que é o P/L e como interpretar o múltiplo

O P/L (Preço/Lucro) é o múltiplo que divide o preço de uma ação pelo lucro por ação acumulado nos últimos doze meses. Um P/L de 8 indica que o investidor paga R$8 por cada R$1 de lucro anual gerado pela empresa. Valores muito baixos podem sinalizar ação barata ou risco embutido; valores altos costumam refletir expectativa de crescimento futuro.

A leitura do indicador nunca é absoluta. Um P/L de 30 pode ser razoável para uma empresa de tecnologia em expansão e absurdo para um banco maduro. O ponto de partida é sempre a comparação setorial e a trajetória histórica da própria companhia.

Para uma visão prática do que está disponível via API e como os indicadores se conectam, há um material complementar sobre o acesso a dados fundamentalistas da B3.

Fórmula do P/L e por que usar o lucro TTM

A definição canônica é simples:

P/L = Preço da ação / LPA (TTM)

LPA (TTM) = Lucro líquido dos últimos 4 trimestres / Número de ações

O detalhe que distorce boa parte dos cálculos informais está na escolha do período do lucro. Usar apenas o último trimestre anualizado ignora sazonalidade. Usar o lucro do último exercício anual torna o indicador desatualizado por até quinze meses após o fim do período contábil.

A prática aceita internacionalmente é a métrica trailing twelve months (TTM), que soma os quatro trimestres mais recentes disponíveis. Em 2026-04-01, por exemplo, o TTM de uma empresa cujo último ITR publicado foi o 4T 2025 soma 1T 2025 + 2T 2025 + 3T 2025 + 4T 2025. Quando o 1T 2026 é divulgado, a janela rola automaticamente.

Como a bolsai calcula o P/L (metodologia baseada na conta 3.11 da CVM)

O ponto sensível da metodologia é a definição de lucro líquido. A DRE brasileira tem duas linhas próximas: a conta 3.09 (lucro líquido do exercício) e a conta 3.11 (lucro líquido consolidado atribuído aos acionistas controladores). A bolsai utiliza a conta 3.11 como referência, consistente com o padrão adotado pelo Fundamentus. Essa escolha explica a concordância de 96% em dados recentes observada no comparativo de acurácia entre fontes.

A sequência interna é:

  1. Ingestão dos ITRs e DFPs publicados na CVM.
  2. Extração da conta 3.11 dos últimos quatro trimestres.
  3. Cálculo do número de ações pela composição de capital, cruzando com o dado oficial da B3 quando disponível.
  4. LPA TTM = soma da conta 3.11 / número de ações.
  5. P/L = preço de fechamento mais recente / LPA TTM.

Bancos exigem tratamento distinto no balanço (patrimônio líquido via contas 2.07/2.08 em vez de 2.03), mas para o P/L a fonte do lucro permanece a 3.11. Casos como ITUB4 e BBAS3 seguem o mesmo pipeline.

Como acessar o P/L de qualquer ação da B3 via API em Python

O endpoint principal é GET /fundamentals/{ticker}. A resposta traz o P/L já calculado, junto com o LPA, preço de referência e dezenas de outros indicadores. O exemplo a seguir consulta o P/L ITUB4, que aparecia próximo de 8,4 em 2026-04-01.

import httpx

API_KEY = "sk_sua_chave_aqui"
BASE = "https://api.usebolsai.com/api/v1"
HEADERS = {"X-API-Key": API_KEY}

r = httpx.get(f"{BASE}/fundamentals/ITUB4", headers=HEADERS)
data = r.json()

print(f"Ticker:   {data['ticker']}")
print(f"Preço:    R$ {data['preco']:.2f}")
print(f"LPA TTM:  R$ {data['lpa']:.2f}")
print(f"P/L:      {data['pl']:.2f}")
print(f"ROE:      {data['roe']:.2f}%")

Saída esperada em abril de 2026:

Ticker:   ITUB4
Preço:    R$ 35.12
LPA TTM:  R$ 4.18
P/L:      8.40
ROE:      21.32%

Crie uma conta gratuita para rodar esse código. São 200 requisições por dia, sem cartão de crédito.

Criar conta gratuita

A mesma chamada funciona para qualquer papel listado. Em WEGE3, o retorno fica em torno de um P/L de 30, reflexo do prêmio de crescimento atribuído pelo mercado. Em PETR4, o valor gira perto de 4. É um sinal aparente de barateamento que, na prática, precisa ser lido à luz do ciclo de commodities discutido mais adiante.

Para comparar a evolução trimestral do múltiplo, o endpoint /fundamentals/{ticker}/history devolve até 11 anos de série, cada ponto com seu respectivo TTM.

Screening por P/L: encontrando ações com múltiplo baixo

O filtro clássico de value investing combina P/L baixo com rentabilidade alta. A lógica é direta: preço descontado só interessa se a empresa gerar retorno consistente sobre o capital. O endpoint /screener aceita os parâmetros pl_max e roe_min e devolve a lista de papéis que satisfazem as condições.

import httpx

API_KEY = "sk_sua_chave_aqui"
BASE = "https://api.usebolsai.com/api/v1"
HEADERS = {"X-API-Key": API_KEY}

# P/L abaixo de 10 e ROE acima de 15%
r = httpx.get(
    f"{BASE}/screener",
    params={
        "pl_max": 10,
        "roe_min": 15,
        "order_by": "pl",
    },
    headers=HEADERS,
)
resultados = r.json()["results"]

print(f"{'Ticker':8}{'P/L':>7}{'ROE':>9}{'Setor':>22}")
for a in resultados[:10]:
    print(f"{a['ticker']:8}{a['pl']:>7.2f}{a['roe']:>8.1f}% {a['sector']:>20}")

Saída típica em 2026-04:

Ticker     P/L      ROE                 Setor
BBAS3     4.31    18.6%         Bancos
ITUB4     8.40    21.3%         Bancos
BBSE3     8.92    40.1%       Seguradoras
VIVT3     9.15    15.7%     Telecomunicações
TAEE11    9.47    17.2%            Energia

Para conhecer todos os parâmetros aceitos (incluindo dy_min, pvp_max, market_cap_min e filtros setoriais), consulte o endpoint /screener na documentação completa.

Quando o P/L engana: setores cíclicos, empresas em prejuízo, efeitos não-recorrentes

Três cenários clássicos distorcem a leitura do indicador e exigem atenção antes de qualquer decisão.

Setores cíclicos

Em commodities, o P/L tende a ser enganosamente baixo no topo do ciclo, quando os lucros estão inflados pelo preço da commodity, e absurdamente alto no fundo, quando os lucros desabam. A PETR4 em 2026-04 negociava com P/L próximo de 4, valor que parece atrativo isoladamente mas reflete um cenário de Brent historicamente alto. VALE3 passou por dinâmica análoga em 2021. A leitura correta envolve olhar o P/L médio de ciclo, em vez de se ater ao múltiplo spot.

Empresas em prejuízo

Quando o LPA é negativo, o P/L também é, e perde completamente a utilidade comparativa. MGLU3 apresentou P/L negativo em vários trimestres durante o ciclo de ajuste do varejo digital entre 2023 e 2025. Em casos assim, múltiplos alternativos como EV/Receita ou P/SR fazem mais sentido. A API da bolsai sinaliza explicitamente esses casos, o que facilita o tratamento programático.

Efeitos não-recorrentes

Venda de ativo, reversão de provisão ou crédito tributário pontual podem inflar o lucro de um trimestre e puxar o P/L TTM para baixo sem que o resultado operacional tenha melhorado. Uma leitura cruzada com a margem EBIT e com o lucro líquido ajustado é indispensável. Os dados brutos da DRE (acessíveis via /financials/{ticker}) permitem identificar a origem do lucro e separar o recorrente do extraordinário.

Faixas típicas de P/L por setor no mercado brasileiro

As faixas abaixo são referências históricas observadas na B3. Servem como calibração de expectativa, não como regra.

Setor P/L típico Exemplos
Bancos 6 – 12 ITUB4, BBAS3, SANB11
Utilities (energia, saneamento) 8 – 14 TAEE11, SBSP3, ELET3
Seguros 8 – 15 BBSE3, PSSA3, CXSE3
Varejo 10 – 25 LREN3, ASAI3, PCAR3
Tecnologia e crescimento 15 – 40 WEGE3, TOTS3, NUBR33
Commodities cíclicas 3 – 8 (topo de ciclo) PETR4, VALE3, SUZB3

P/L em contexto: relação com ROE, P/VP e crescimento

O P/L isolado é quase sempre insuficiente. A combinação com outros múltiplos e taxas de crescimento revela se o preço faz sentido.

A relação matemática entre P/L e P/VP é direta: P/VP = P/L × ROE. Uma empresa com ROE de 20% e P/L de 10 terá P/VP de 2. Para entender o lado patrimonial desse trio, o post específico sobre P/VP via API em Python aprofunda o tema.

O earnings yield (inverso do P/L, ou seja, 1/(P/L)) é útil para comparar o retorno implícito da ação com a NTN-B ou o CDI. Um P/L de 10 equivale a um yield de 10% ao ano, contra os 6% reais oferecidos por uma NTN-B longa em 2026.

Benjamin Graham, em O Investidor Inteligente, sugeria P/L menor que 15 combinado com P/VP menor que 1,5 como triagem inicial. A fórmula sobrevive como filtro de value, ainda que hoje o investidor observe também a qualidade do lucro e a trajetória de crescimento antes de converter o screening em tese.

Perguntas frequentes

Qual o P/L ideal para uma ação?

Não existe um P/L ideal universal. O múltiplo depende do setor, da fase de crescimento da empresa e do ciclo econômico. Bancos brasileiros costumam operar entre 6 e 12, empresas de tecnologia entre 15 e 40. O P/L só faz sentido comparado a empresas do mesmo setor e ao histórico da própria empresa.

Como calcular o P/L no Python?

A fórmula é P/L = preço da ação dividido pelo LPA (lucro por ação) dos últimos 12 meses. No Python, a forma mais direta é consumir a API da bolsai: httpx.get("https://api.usebolsai.com/api/v1/fundamentals/ITUB4", headers={"X-API-Key": API_KEY}).json()["pl"] retorna o valor calculado com TTM normalizado.

P/L negativo significa que a ação é ruim?

P/L negativo indica apenas que o lucro líquido TTM da empresa foi negativo, ou seja, a companhia teve prejuízo no período. O múltiplo perde utilidade analítica nesse caso e não deve ser usado para comparação. A API da bolsai retorna null ou um valor negativo explícito para que o consumidor trate o cenário.

Qual a diferença entre P/L trailing e P/L forward?

O P/L trailing (TTM) usa o lucro realizado nos últimos 12 meses. O P/L forward usa projeções de lucro para os próximos 12 meses, elaboradas por analistas. O trailing é objetivo e auditável; o forward depende de estimativas sujeitas a revisão. A API da bolsai entrega P/L trailing, calculado a partir dos balanços oficiais publicados na CVM.

Próximos passos

O P/L é apenas a porta de entrada. Um indicador P/L bem calculado, alinhado à metodologia usada em uma API fundamentalista robusta de referência, reduz o ruído do trabalho analítico e permite automatizar carteiras, rankings e alertas com poucas linhas de Python. Consulte a referência da API para os demais endpoints e limites do plano, ou acesse diretamente a página de preços para comparar os tiers.

Leia também

Este conteúdo é educativo e não constitui recomendação de investimento.