# brapi - API de ações da bolsa de valores brasileira
**URL:** https://brapi.dev/
## Sobre a brapi
Acesse o mercado financeiro em poucos segundos. A API mais confiável do Brasil entrega preços históricos (OHLCV), dividendos detalhados e fundamentos completos para seus apps e estratégias financeiras — integrada em minutos.
* **Documentação clara e objetiva**
* **API simples e completa**
* **Fácil de usar, rápida e estável**
---
## Exemplo de Uso (Cotação)
### Requisição
```bash
curl https://brapi.dev/api/quote/PETR4
```
### Resposta
```json
{
"results": [
{
"currency": "BRL",
"marketCap": 406927019658,
"shortName": "PETROBRAS PN EDR N2",
"longName": "Petróleo Brasileiro S.A. - Petrobras",
"regularMarketChange": 0.82,
"regularMarketChangePercent": 2.734,
"regularMarketTime": "2025-05-02T20:07:46.000Z",
"regularMarketPrice": 30.81,
"regularMarketDayHigh": 30.81,
"regularMarketDayRange": "29.97 - 30.81",
"regularMarketDayLow": 29.97,
"regularMarketVolume": 32881800,
"regularMarketPreviousClose": 29.99,
"regularMarketOpen": 30.29,
"fiftyTwoWeekRange": "29.96 - 42.09",
"fiftyTwoWeekLow": 29.96,
"fiftyTwoWeekHigh": 42.09,
"symbol": "PETR4",
"priceEarnings": 10.864275891251454,
"earningsPerShare": 2.8358848,
"logourl": "https://icons.brapi.dev/icons/PETR4.svg"
}
],
"requestedAt": "2025-05-04T01:30:20.521Z",
"took": "8ms"
}
```
---
## Empresas e Parceiros que utilizam
* Banco Banestes
* Toro Investimentos
* Suno Research
* Grupo Primo
* PicPay
* A Supernova
---
## Principais Funcionalidades
### Análise Fundamentalista
Balanços, DREs e múltiplos direto da CVM, sem bagunça ou parsing manual. Balanço Patrimonial, Demonstrativo de Resultados, Fluxo de Caixa, Valor Adicionado, Dados financeiros e Indicadores financeiros.
### Preços Históricos (OHLCV)
Séries completas para backtests e gráficos que impressionam.
### Dividendos Detalhados
Datas com, ex e pagamento — otimize sua renda passiva com dados completos.
### Moedas e Criptomoedas
Taxas de câmbio e preços históricos de criptomoedas atualizados.
### Inflação e Taxa Selic histórica
Dados de inflação, como IPCA e IGP-M, para análises econômicas e financeiras.
---
## Exemplo de Dados Fundamentalistas (WEGE3)
### Requisição
```bash
curl https://brapi.dev/api/quote/WEGE3?modules=balanceSheetHistory,balanceSheetHistoryQuarterly
```
### Resposta (Estrutura de Dados)
```json
{
"symbol": "WEGE3", // Símbolo do ativo
"balanceSheetHistory": [ // Histórico Anual do Balanço Patrimonial
{
"type": "yearly", // Tipo (Periodicidade: Anual)
"endDate": "2024-12-31", // Data de Fim do Período
"cash": 7347599000, // Caixa e Equivalentes de Caixa
"shortTermInvestments": 648477000, // Investimentos de Curto Prazo
"netReceivables": 7394411000, // Contas a Receber Líquidas
"inventory": 9903951000, // Estoques
"otherCurrentAssets": 1109507000, // Outros Ativos Circulantes
"totalCurrentAssets": 27221359000, // Total de Ativos Circulantes
"longTermInvestments": 71808000, // Investimentos de Longo Prazo
"propertyPlantEquipment": 9933659000, // Imobilizado
"otherAssets": 14268342000, // Outros Ativos Não Circulantes
"totalAssets": 41489701000, // Total de Ativos
"accountsPayable": 3778116000, // Contas a Pagar (Fornecedores)
"shortLongTermDebt": 2850956000, // Dívida de Curto Prazo
"longTermDebt": 744281000, // Dívida de Longo Prazo
"otherLiab": 1212384000, // Outros Passivos Não Circulantes
"totalCurrentLiabilities": 15454265000, // Total de Passivos Circulantes
"totalLiab": 41489701000, // Total de Passivos
"commonStock": 7504517000, // Capital Social
"retainedEarnings": null, // Lucros Retidos / Prejuízos Acumulados
"treasuryStock": null, // Ações em Tesouraria
"otherStockholderEquity": -155191000, // Outros Componentes do Patrimônio Líquido
"totalStockholderEquity": 23125217000, // Total do Patrimônio Líquido
"netTangibleAssets": null, // Ativos Tangíveis Líquidos
"goodWill": null, // Goodwill (Ágio)
"intangibleAssets": 2820655000, // Ativos Intangíveis
"deferredLongTermAssetCharges": null, // Encargos Diferidos de Ativos LP
"deferredLongTermLiab": 170520000, // Passivos Fiscais Diferidos LP
"minorityInterest": 920996000, // Participação de Não Controladores
"capitalSurplus": null, // Reservas de Capital
"accountsReceivableFromClients": 7394411000, // Contas a Receber de Clientes
"taxesToRecover": 817414000, // Impostos a Recuperar
"longTermAssets": 14268342000, // Total do Ativo Não Circulante
"longTermRealizableAssets": 1442220000, // Ativo Realizável a Longo Prazo
"longTermDeferredTaxes": 1141821000, // Tributos Diferidos (Ativo Não Circulante)
"shareholdings": 71808000, // Participações Societárias
"otherNonCurrentAssets": 283265000, // Outros Ativos Não Circulantes (detalhe)
"nonCurrentAssets": 20785497000, // Total do Ativo Não Circulante (sinônimo de longTermAssets)
"shareholdersEquity": 23125217000, // Patrimônio Líquido (sinônimo de totalStockholderEquity)
"realizedShareCapital": 7504517000, // Capital Social Realizado (sinônimo de commonStock)
"capitalReserves": -155191000, // Reservas de Capital (sinônimo de capitalSurplus)
"revaluationReserves": 3631000, // Reservas de Reavaliação
"profitReserves": 11466140000, // Reservas de Lucros
"equityValuationAdjustments": 277498000, // Ajustes de Avaliação Patrimonial
"otherComprehensiveResults": 3107626000, // Outros Resultados Abrangentes
"currentLiabilities": 15454265000, // Total do Passivo Circulante (sinônimo de totalCurrentLiabilities)
"socialAndLaborObligations": 728469000, // Obrigações Sociais e Trabalhistas
"providers": 3778116000, // Fornecedores (sinônimo de accountsPayable)
"taxObligations": 799564000, // Obrigações Fiscais (Circulante)
"loansAndFinancing": 2850956000, // Empréstimos e Financiamentos (Circulante)
"loansAndFinancingInNationalCurrency": 6089000, // Empréstimos e Financiamentos (Moeda Nacional)
"loansAndFinancingInForeignCurrency": 2844867000, // Empréstimos e Financiamentos (Moeda Estrangeira)
"otherObligations": 4330000, // Outras Obrigações (Circulante)
"nonCurrentLiabilities": 2910219000, // Total do Passivo Não Circulante
"longTermLoansAndFinancing": 744281000, // Empréstimos e Financiamentos (Não Circulante)
"longTermLoansAndFinancingInNationalCurrency": 248894000, // Empréstimos e Financiamentos LP (Moeda Nacional)
"longTermLoansAndFinancingInForeignCurrency": 495387000, // Empréstimos e Financiamentos LP (Moeda Estrangeira)
"otherLongTermObligations": 1212384000, // Outras Obrigações (Não Circulante)
"longTermProvisions": 783034000, // Provisões (Não Circulante)
"updatedAt": "2024-12-31" // Atualizado Em
}
],
"balanceSheetHistoryQuarterly": [
// Estrutura similar à anual, mas com type: "quarterly"
]
}
```
---
## Casos de Uso
1. **Integração de Dados do Mercado Financeiro:** Conecte cotações, históricos e fundamentos em seus apps, planilhas ou sistemas com nossa API REST.
2. **Análises Históricas e Backtesting:** Acesse séries temporais detalhadas (OHLCV) para backtests precisos.
3. **Dashboards e Aplicações:** Desenvolva rastreadores de portfólio ou plataformas de análise.
4. **Integração com IA (MCP):** Conecte dados financeiros diretamente em assistentes de IA como Cursor, Claude e VS Code via Model Context Protocol.
### Exemplo de Log de Aplicação
```text
[2023-12-15 14:23:45] INFO Iniciando análise de dados históricos.
[2023-12-15 14:23:47] ACTION Obtendo série histórica OHLCV...
[2023-12-15 14:23:50] DECISION Análise de padrões. Confiança: 85%
[2023-12-15 14:23:52] WARNING Anomalia detectada em indicadores.
[2023-12-15 14:23:55] ERROR Backtest concluído. Resultado disponível.
```
---
## Planos e Preços
### Gratuito
**R$ 0/ano**
Ideal para testar a API, projetos pessoais ou acadêmicos.
* Até 15.000 requisições por mês
* Consulta de 1 ativo por requisição
* Dados históricos de cotações dos últimos 3 meses
* Acesso instantâneo com dados atualizados a cada 30 minutos
* Dados Fundamentalistas Profundos (BP, DRE, DFC)
* Histórico Completo de Dividendos
### Startup
**R$ 59,99/mes**
**R$ 599,90/ano** (Economize 2 meses no plano anual)
Ideal para desenvolvedores e investidores que precisam de mais profundidade.
* Volume: 150.000 requisições/mês
* Consultas Múltiplas: Até 10 ativos por requisição
* Dados atualizados a cada 15 minutos
* Histórico de Cotações: Último ano completo
* Dados Fundamentalistas Anuais (últimos 5 anos) e DREs anuais
* Dados Fundamentalistas Trimestrais e Histórico Profundo (desde 2009)
### Pro (Mais Popular)
**R$ 99,99/mês**
**R$ 999,90/ano** (Economize 2 meses no plano anual)
A escolha definitiva para análises profundas e uso profissional.
* Volume: 500.000 requisições/mês
* Consultas Múltiplas: Até 20 ativos por requisição
* Dados atualizados a cada 5 minutos
* Dados Fundamentalistas Completos (BP, DRE, DFC, DVA desde 2009)
* Histórico de Cotações Extenso: 10+ anos
* Indicadores Financeiros Avançados Prontos (P/L, P/VP, ROE, etc.)
* Suporte Técnico Prioritário Dedicado
---
## Integração
Nossa API REST suporta qualquer linguagem de programação. Exemplos comuns incluem:
* JavaScript
* Java
* Go
* Python
* TypeScript
---
## Blog e Tutoriais Recentes
* **Como Usar a API da B3 com Python: Guia Prático 2025:** Aprenda a integrar a API brapi.dev com Python usando requests, Pandas e Flask.
* **API B3 com TypeScript e JavaScript:** Guia completo de integração usando fetch, Axios, Next.js e Node.js.
* **Como Importar Cotações da B3 no Excel:** Tutorial usando Power Query e VBA.
---
## Informações Legais e Rodapé
**ASL TECNOLOGIA LTDA 2025**
CNPJ: 41.182.041/0001-23
Parceiro Microsoft for Startups
**Fontes de Dados:** CVM, BCB, Tesouro Direto, B3.
**Isenção de Responsabilidade:** A Brapi fornece informações estritamente informativas provenientes de fontes públicas. Não fornecemos orientações de compra ou venda. Não nos responsabilizamos por decisões financeiras tomadas com base nas informações disponibilizadas. Recomendamos consultoria financeira independente.
```
# Comece a Usar a API da brapi.dev
URL: /docs.mdx
Guia completo para começar a usar a API da brapi.dev. Aprenda sobre autenticação, endpoints principais e veja exemplos práticos para integrar dados financeiros do Brasil em suas aplicações.
***
title: 'Comece a Usar a API da brapi.dev'
description:
'Guia completo para começar a usar a API da brapi.dev. Aprenda sobre
autenticação, endpoints principais e veja exemplos práticos para integrar
dados financeiros do Brasil em suas aplicações.'
------------------------------------------------
import { Callout } from 'fumadocs-ui/components/callout';
import { Card, Cards } from 'fumadocs-ui/components/card';
import { Step, Steps } from 'fumadocs-ui/components/steps';
import { Tab, Tabs } from 'fumadocs-ui/components/tabs';
Bem-vindo à documentação da **brapi.dev**. Nossa API foi projetada para ser
**simples, robusta e confiável**, permitindo que você integre dados financeiros
do mercado brasileiro em suas aplicações com o mínimo de esforço.
Este guia vai te mostrar como fazer sua primeira requisição em minutos.
## Teste Agora - Sem Cadastro!
Para facilitar o desenvolvimento e testes, você pode experimentar nossa API
**imediatamente** com estas 4 ações brasileiras populares - **sem precisar de
token ou cadastro**:
GetQuoteAsync(string ticker) { var url = $"{BaseUrl}/quote/{ticker}?token={_token}"; var response = await _httpClient.GetStringAsync(url); var data = JsonSerializer.Deserialize(response); return data?.Results?[0]; } static async Task Main() { var client = new BrapiClient("SEU_TOKEN"); var quote = await client.GetQuoteAsync("PETR4"); if (quote != null) { Console.WriteLine($"{quote.Symbol}: R$ {quote.RegularMarketPrice:F2}"); } } } ``` ## Próximos Passos * Explore [outros exemplos](/docs/examples) * Veja a [documentação completa](/docs) # Microsoft Excel URL: /docs/examples/excel.mdx Aprenda a importar cotações da B3 no Excel usando Power Query e a API brapi.dev. Integração sem código para planilhas financeiras. *** title: 'Microsoft Excel' description: >- Aprenda a importar cotações da B3 no Excel usando Power Query e a API brapi.dev. Integração sem código para planilhas financeiras. full: false keywords: brapi, api, excel, power query, planilha, cotações openGraph: title: Integração com Excel - brapi.dev description: Importe cotações da B3 no Excel usando Power Query type: website locale: pt\_BR lastUpdated: '2025-10-12T17:30:00.000Z' lang: pt-BR ----------- Importe cotações automáticas da B3 no Microsoft Excel usando Power Query. ## Usando Power Query O Power Query permite importar dados JSON diretamente no Excel sem necessidade de programação. ### Passo a Passo 1. Abra o Excel e vá para a guia **Dados** 2. Clique em **Obter Dados** > **De Outras Fontes** > **Da Web** 3. Insira a URL: ``` https://brapi.dev/api/quote/PETR4?token=SEU_TOKEN ``` 4. Clique em **OK** 5. O Power Query abrirá uma janela mostrando os dados JSON 6. Clique em **Converter** > **Para Tabela** 7. Expanda as colunas conforme necessário 8. Clique em **Fechar e Carregar** ### Atualização Automática Para atualizar os dados automaticamente: 1. Clique com botão direito na tabela 2. Selecione **Atualizar** 3. Ou configure atualização automática em **Propriedades da Consulta** ## VBA (Avançado) Se precisar de mais controle, use VBA: ```vb Sub GetBrapiQuote() Dim http As Object Dim json As Object Dim token As String Dim ticker As String Dim url As String token = "SEU_TOKEN" ticker = "PETR4" url = "https://brapi.dev/api/quote/" & ticker & "?token=" & token Set http = CreateObject("MSXML2.XMLHTTP") http.Open "GET", url, False http.Send If http.Status = 200 Then Set json = JsonConverter.ParseJson(http.responseText) Range("A1").Value = json("results")(1)("symbol") Range("B1").Value = json("results")(1)("regularMarketPrice") End If End Sub ``` > **Nota**: Requer biblioteca [VBA-JSON](https://github.com/VBA-tools/VBA-JSON) ## Próximos Passos * Veja como usar no [Google Sheets](/docs/examples/google-sheets) * Explore [outros exemplos](/docs/examples) # Google Sheets URL: /docs/examples/google-sheets.mdx Aprenda a buscar cotações automáticas da B3 no Google Sheets usando a API brapi.dev. Inclui função personalizada em Apps Script para obter dados de ações e ETFs que não aparecem no Google Finance. *** title: 'Google Sheets' description: >- Aprenda a buscar cotações automáticas da B3 no Google Sheets usando a API brapi.dev. Inclui função personalizada em Apps Script para obter dados de ações e ETFs que não aparecem no Google Finance. full: false keywords: brapi, api, google sheets, planilha, cotações, ETFs, apps script, IMAB11, WRLD11, automação openGraph: title: Integração com Google Sheets - brapi.dev description: >- Busque cotações automáticas da B3 no Google Sheets com a API brapi.dev. Solução para ETFs brasileiros que não aparecem no Google Finance. type: website locale: pt\_BR lastUpdated: '2025-10-12T17:30:00.000Z' lang: pt-BR ----------- O Google Sheets é uma ferramenta poderosa para acompanhar seus investimentos de forma automática. Através do Google Apps Script, você pode criar uma função personalizada que busca cotações diretamente da brapi.dev. ## Por que usar a brapi.dev no Google Sheets? A função `GOOGLEFINANCE` não funciona para muitos ativos brasileiros, especialmente ETFs como IMAB11, WRLD11, IB5M11 e IRFM11. A integração com a brapi.dev resolve esse problema, oferecendo: * **Dados confiáveis**: Acesso direto aos dados da B3 * **ETFs brasileiros**: Funciona com todos os ativos negociados na B3 * **Atualização automática**: Cotações atualizadas conforme seu plano * **Uso gratuito**: 15.000 requisições mensais no plano gratuito ## Passo a Passo ### 1. Obtenha sua chave API 1. Acesse [brapi.dev](https://brapi.dev) 2. Crie uma conta gratuita 3. No painel de usuário, copie seu **token API** ### 2. Adicione a função personalizada 1. Abra sua planilha no Google Sheets 2. Clique em **Extensões** > **Apps Script** 3. Apague o código existente e cole o código abaixo: ```javascript /** * Retorna o preço atual de um ticker da B3 via brapi.dev * Uso: =BRAPI_PRICE("PETR4"; $A$1) * @param {string} ticker - Código do ativo (ex: "PETR4", "VALE3", "IMAB11") * @param {string} token - Token da API brapi.dev * @return {number} Preço atual do ativo */ function BRAPI_PRICE(ticker, token) { if (!ticker) return "Erro: informe ticker"; // Permite passar o token como célula ou string if (token && typeof token === 'object' && token.length) { token = token[0][0]; } // Se não informar token, tenta pegar da célula A1 if (!token) { var sh = SpreadsheetApp.getActiveSpreadsheet().getActiveSheet(); token = sh.getRange('A1').getDisplayValue(); } if (!token) return "Erro: token brapi.dev ausente"; // Formata o ticker ticker = String(ticker).toUpperCase().trim(); if (ticker.indexOf('.') === -1) ticker = ticker + '.SA'; // Faz a requisição var url = 'https://brapi.dev/api/quote/' + encodeURIComponent(ticker) + '?token=' + encodeURIComponent(token); var options = { muteHttpExceptions: true, headers: {'User-Agent': 'Mozilla/5.0'} }; var response = UrlFetchApp.fetch(url, options); if (response.getResponseCode() !== 200) { return "HTTP " + response.getResponseCode() + ": " + response.getContentText().substring(0, 200); } var json = JSON.parse(response.getContentText()); var result = (json && json.results && json.results[0]) || null; if (!result) return "Sem dados retornados"; return result.regularMarketPrice || result.lastPrice || result.close || "Preço não encontrado"; } ``` 4. Salve o projeto (Ctrl + S ou clique no ícone de disquete) 5. Feche a janela do editor ### 3. Use a função na sua planilha 1. Na célula **A1**, cole seu token da API brapi.dev 2. Em qualquer outra célula, use a fórmula: ``` =BRAPI_PRICE("PETR4"; $A$1) ``` A referência `$A$1` garante que o endereço da célula do token não mude ao arrastar a fórmula. ## Exemplos de Uso ### Ações ``` =BRAPI_PRICE("PETR4"; $A$1) # Petrobras PN =BRAPI_PRICE("VALE3"; $A$1) # Vale ON =BRAPI_PRICE("ITUB4"; $A$1) # Itaú Unibanco PN =BRAPI_PRICE("BBDC4"; $A$1) # Bradesco PN ``` ### ETFs de Renda Fixa ``` =BRAPI_PRICE("IMAB11"; $A$1) # ETF IMA-B =BRAPI_PRICE("IB5M11"; $A$1) # ETF IMA-B 5+ =BRAPI_PRICE("IRFM11"; $A$1) # ETF IRF-M =BRAPI_PRICE("B5P211"; $A$1) # ETF NTN-B Principal ``` ### ETFs Internacionais ``` =BRAPI_PRICE("WRLD11"; $A$1) # ETF Global =BRAPI_PRICE("IVVB11"; $A$1) # ETF S&P 500 =BRAPI_PRICE("NASD11"; $A$1) # ETF Nasdaq ``` ### Índices ``` =BRAPI_PRICE("^BVSP"; $A$1) # Índice Ibovespa ``` ## Função Avançada: Múltiplos Dados Se você quiser buscar mais informações além do preço, pode criar uma função mais completa: ```javascript /** * Retorna dados completos de um ativo * Uso: =BRAPI_DATA("PETR4"; $A$1; "symbol") * @param {string} ticker - Código do ativo * @param {string} token - Token da API * @param {string} field - Campo desejado (regularMarketPrice, currency, shortName, etc) * @return {any} Valor do campo solicitado */ function BRAPI_DATA(ticker, token, field) { if (!ticker) return "Erro: informe ticker"; if (!field) return "Erro: informe campo"; if (token && typeof token === 'object' && token.length) { token = token[0][0]; } if (!token) { var sh = SpreadsheetApp.getActiveSpreadsheet().getActiveSheet(); token = sh.getRange('A1').getDisplayValue(); } if (!token) return "Erro: token ausente"; ticker = String(ticker).toUpperCase().trim(); if (ticker.indexOf('.') === -1) ticker = ticker + '.SA'; var url = 'https://brapi.dev/api/quote/' + encodeURIComponent(ticker) + '?token=' + encodeURIComponent(token); var options = { muteHttpExceptions: true, headers: {'User-Agent': 'Mozilla/5.0'} }; var response = UrlFetchApp.fetch(url, options); if (response.getResponseCode() !== 200) { return "Erro HTTP " + response.getResponseCode(); } var json = JSON.parse(response.getContentText()); var result = (json && json.results && json.results[0]) || null; if (!result) return "Sem dados"; return result[field] || "Campo não encontrado"; } ``` Exemplos de uso: ``` =BRAPI_DATA("PETR4"; $A$1; "regularMarketPrice") # Preço =BRAPI_DATA("PETR4"; $A$1; "currency") # Moeda =BRAPI_DATA("PETR4"; $A$1; "shortName") # Nome curto =BRAPI_DATA("PETR4"; $A$1; "regularMarketChange") # Variação do dia =BRAPI_DATA("PETR4"; $A$1; "marketCap") # Valor de mercado ``` ## Dicas de Uso 1. **Economize requisições**: Evite usar a função em células que são recalculadas constantemente 2. **Cache de dados**: Para grandes planilhas, considere atualizar dados periodicamente e não em tempo real 3. **Limite de requisições**: O plano gratuito oferece 15.000 requisições/mês - monitore seu uso no painel 4. **Erros de quota**: Se exceder o limite, a API retornará erro HTTP 429 ## Monitoramento de Uso Para uma ideia de consumo, uma planilha com 30 ativos diferentes, atualizada 3x ao dia, consome aproximadamente 2.700 requisições por mês (30 ativos × 3 atualizações × 30 dias), bem abaixo do limite gratuito. ## Solução de Problemas ### "Erro: token ausente" Verifique se o token está na célula A1 ou se está sendo passado corretamente como parâmetro. ### "HTTP 401" Token inválido. Verifique se copiou o token completo do painel da brapi.dev. ### "HTTP 429" Limite de requisições excedido. Aguarde o próximo ciclo de faturamento ou considere o plano pago. ### "Sem dados retornados" Ticker inválido ou ativo não encontrado. Verifique o código do ativo. ## Próximos Passos * Explore outros [exemplos de integração](/docs/examples) * Consulte a [documentação da API](/docs) * Confira os [endpoints disponíveis](/docs/acoes) # Exemplos de Integração URL: /docs/examples.mdx Exemplos práticos de integração com a API brapi.dev em diversas linguagens de programação, plataformas e ferramentas. Inclui código de exemplo para TypeScript, Python, PHP, Java, C#, Google Sheets, Excel, WordPress e aplicações mobile. *** title: 'Exemplos de Integração' description: >- Exemplos práticos de integração com a API brapi.dev em diversas linguagens de programação, plataformas e ferramentas. Inclui código de exemplo para TypeScript, Python, PHP, Java, C#, Google Sheets, Excel, WordPress e aplicações mobile. full: false keywords: brapi, api, documentação, integração, exemplos, código, typescript, python, php, java, google sheets, excel openGraph: title: Exemplos de Integração com brapi.dev description: >- Exemplos práticos de integração com a API brapi.dev em diversas linguagens de programação, plataformas e ferramentas. Inclui código de exemplo para TypeScript, Python, PHP, Java, C#, Google Sheets, Excel, WordPress e aplicações mobile. type: website locale: pt\_BR lastUpdated: '2025-10-12T17:30:00.000Z' lang: pt-BR ----------- A API da brapi.dev é uma API REST, o que significa que ela pode ser integrada com praticamente qualquer plataforma ou linguagem de programação. Esta seção apresenta exemplos concretos de como integrar nossa API em diferentes ambientes. ## Linguagens de Programação Exemplos de integração em diferentes linguagens: * [TypeScript/JavaScript](/docs/examples/typescript) - Integração usando fetch e Axios * [Python](/docs/examples/python) - Usando a biblioteca requests * [PHP](/docs/examples/php) - Usando cURL * [Java](/docs/examples/java) - Usando HttpClient (Java 11+) * [C#](/docs/examples/csharp) - Usando HttpClient ## Planilhas e Ferramentas Sem Código Integre cotações diretamente em planilhas e ferramentas de produtividade: * [Google Sheets](/docs/examples/google-sheets) - Função personalizada com Apps Script * [Microsoft Excel](/docs/examples/excel) - Power Query para importar dados JSON * [Notion](/docs/examples/notion) - Sincronização automática com Note API Connector ## CMS e Plataformas Exemplos de integração em sistemas de gerenciamento de conteúdo: * [WordPress](/docs/examples/wordpress) - Shortcode personalizado para exibir cotações ## Aplicações Mobile Exemplos para desenvolvimento mobile: * [React Native](/docs/examples/react-native) - Componente de cotação com hooks ## Começando Todos os exemplos requerem um token de API. Para obter seu token: 1. Acesse [brapi.dev](https://brapi.dev) 2. Crie uma conta gratuita 3. Copie seu token no painel de usuário O plano gratuito oferece **15.000 requisições mensais**, suficiente para a maioria dos casos de uso. ## Suporte Para sugestões de integração com outras plataformas ou linguagens, entre em contato com nossa equipe de suporte. # Java URL: /docs/examples/java.mdx Integre a API brapi.dev em suas aplicações Java usando HttpClient. Exemplos práticos para buscar cotações de ações da B3. *** title: 'Java' description: >- Integre a API brapi.dev em suas aplicações Java usando HttpClient. Exemplos práticos para buscar cotações de ações da B3. full: false keywords: brapi, api, java, httpclient, cotações, B3 openGraph: title: Integração Java - brapi.dev description: Exemplos de integração usando Java 11+ HttpClient type: website locale: pt\_BR lastUpdated: '2025-10-12T17:30:00.000Z' lang: pt-BR ----------- Integre a API brapi.dev em suas aplicações Java usando HttpClient (Java 11+). ## Exemplo Básico ```java import java.net.URI; import java.net.http.HttpClient; import java.net.http.HttpRequest; import java.net.http.HttpResponse; public class BrapiExample { public static void main(String[] args) throws Exception { String token = "SEU_TOKEN"; String ticker = "PETR4"; String url = "https://brapi.dev/api/quote/" + ticker + "?token=" + token; HttpClient client = HttpClient.newHttpClient(); HttpRequest request = HttpRequest.newBuilder() .uri(URI.create(url)) .GET() .build(); HttpResponse response = client.send(request, HttpResponse.BodyHandlers.ofString()); System.out.println(response.body()); } } ``` ## Classe Cliente Completa ```java import java.net.URI; import java.net.http.HttpClient; import java.net.http.HttpRequest; import java.net.http.HttpResponse; import java.time.Duration; import com.google.gson.Gson; import com.google.gson.JsonObject; public class BrapiClient { private static final String BASE_URL = "https://brapi.dev/api"; private final HttpClient httpClient; private final String token; private final Gson gson; public BrapiClient(String token) { this.token = token; this.httpClient = HttpClient.newBuilder() .connectTimeout(Duration.ofSeconds(10)) .build(); this.gson = new Gson(); } public QuoteResponse getQuote(String ticker) throws Exception { String url = String.format("%s/quote/%s?token=%s", BASE_URL, ticker, token); HttpRequest request = HttpRequest.newBuilder() .uri(URI.create(url)) .header("User-Agent", "Java BrapiClient/1.0") .GET() .build(); HttpResponse response = httpClient.send(request, HttpResponse.BodyHandlers.ofString()); if (response.statusCode() != 200) { throw new Exception("HTTP " + response.statusCode()); } return gson.fromJson(response.body(), QuoteResponse.class); } public static class QuoteResponse { public Quote[] results; public static class Quote { public String symbol; public String shortName; public double regularMarketPrice; public double regularMarketChange; public double regularMarketChangePercent; public String currency; } } public static void main(String[] args) { try { BrapiClient client = new BrapiClient("SEU_TOKEN"); QuoteResponse response = client.getQuote("PETR4"); if (response.results != null && response.results.length > 0) { QuoteResponse.Quote quote = response.results[0]; System.out.printf("%s: R$ %.2f%n", quote.symbol, quote.regularMarketPrice); System.out.printf("Variação: %.2f%%%n", quote.regularMarketChangePercent); } } catch (Exception e) { e.printStackTrace(); } } } ``` ## Spring Boot ```java // BrapiService.java package com.example.service; import org.springframework.beans.factory.annotation.Value; import org.springframework.cache.annotation.Cacheable; import org.springframework.stereotype.Service; import org.springframework.web.client.RestTemplate; @Service public class BrapiService { @Value("${brapi.token}") private String token; private final RestTemplate restTemplate = new RestTemplate(); private static final String BASE_URL = "https://brapi.dev/api"; @Cacheable(value = "quotes", key = "#ticker") public QuoteResponse getQuote(String ticker) { String url = String.format("%s/quote/%s?token=%s", BASE_URL, ticker, token); return restTemplate.getForObject(url, QuoteResponse.class); } } // Controller package com.example.controller; import com.example.service.BrapiService; import org.springframework.web.bind.annotation.*; @RestController @RequestMapping("/api/stock") public class StockController { private final BrapiService brapiService; public StockController(BrapiService brapiService) { this.brapiService = brapiService; } @GetMapping("/{ticker}") public QuoteResponse getStock(@PathVariable String ticker) { return brapiService.getQuote(ticker); } } // application.properties // brapi.token=SEU_TOKEN ``` ## Próximos Passos * Explore [outros exemplos](/docs/examples) * Veja a [documentação completa](/docs) # Notion URL: /docs/examples/notion.mdx Sincronize cotações da B3 no Notion usando Note API Connector e a API brapi.dev. Importe dados automaticamente sem código. *** title: 'Notion' description: >- Sincronize cotações da B3 no Notion usando Note API Connector e a API brapi.dev. Importe dados automaticamente sem código. full: false keywords: brapi, api, notion, note api connector, automação, cotações openGraph: title: Integração com Notion - brapi.dev description: Sincronize cotações da B3 no Notion automaticamente type: website locale: pt\_BR lastUpdated: '2025-10-12T17:30:00.000Z' lang: pt-BR ----------- Importe e sincronize dados da brapi.dev diretamente no Notion sem necessidade de código. ## Note API Connector O [Note API Connector](https://noteapiconnector.com?ref=brapi) permite importar e sincronizar dados da brapi.dev diretamente no Notion. Com ele, você pode: * 📊 Importar dados de ações e cotações automaticamente * 🔄 Agendar sincronizações em intervalos personalizados (a cada hora, a cada 5 minutos, etc.) * 📈 Criar dashboards ao vivo com dados do mercado financeiro brasileiro * 📌 Manter seu workspace do Notion sempre atualizado com as últimas cotações ## Como Usar 1. Acesse o [Note API Connector](https://noteapiconnector.com?ref=brapi) e clique em **Connect with Notion** 2. Conecte sua conta do Notion e autorize o workspace 3. Configure uma requisição para a brapi.dev usando sua API token: * **URL**: `https://brapi.dev/api/quote/PETR4?token=SEU_TOKEN` * **Método**: GET 4. Personalize a saída e configure a sincronização automática ## Configuração Avançada Para múltiplos ativos, use: ``` https://brapi.dev/api/quote/PETR4,VALE3,ITUB4?token=SEU_TOKEN ``` ## Documentação Para um guia completo de configuração, consulte a [documentação oficial do Note API Connector](https://help.noteapiconnector.com?ref=brapi). ## Próximos Passos * Veja como usar no [Google Sheets](/docs/examples/google-sheets) * Explore [outros exemplos](/docs/examples) # PHP URL: /docs/examples/php.mdx Integre a API brapi.dev em suas aplicações PHP usando cURL. Exemplos práticos para buscar cotações de ações da B3. *** title: 'PHP' description: >- Integre a API brapi.dev em suas aplicações PHP usando cURL. Exemplos práticos para buscar cotações de ações da B3. full: false keywords: brapi, api, php, curl, cotações, B3 openGraph: title: Integração PHP - brapi.dev description: Exemplos de integração usando PHP e cURL type: website locale: pt\_BR lastUpdated: '2025-10-12T17:30:00.000Z' lang: pt-BR ----------- Integre a API brapi.dev em suas aplicações PHP usando cURL ou file\_get\_contents. ## Usando cURL ```php ``` ## Com Tratamento de Erros ```php getMessage()}\n"; } ?> ``` ## Classe Cliente ```php token = $token; } public function getQuote($ticker) { $url = "{$this->baseUrl}/quote/{$ticker}?token={$this->token}"; return $this->request($url); } public function getMultipleQuotes($tickers) { $tickersParam = implode(',', $tickers); $url = "{$this->baseUrl}/quote/{$tickersParam}?token={$this->token}"; return $this->request($url); } private function request($url) { $curl = curl_init($url); curl_setopt($curl, CURLOPT_RETURNTRANSFER, true); curl_setopt($curl, CURLOPT_TIMEOUT, 10); curl_setopt($curl, CURLOPT_HTTPHEADER, [ 'User-Agent: PHP BrapiClient/1.0' ]); $response = curl_exec($curl); $httpCode = curl_getinfo($curl, CURLINFO_HTTP_CODE); $error = curl_error($curl); curl_close($curl); if ($error) { throw new Exception("Erro cURL: {$error}"); } if ($httpCode !== 200) { throw new Exception("HTTP {$httpCode}"); } return json_decode($response, true); } } // Uso $client = new BrapiClient('SEU_TOKEN'); try { $data = $client->getQuote('PETR4'); $quote = $data['results'][0]; echo "{$quote['symbol']}: R$ {$quote['regularMarketPrice']}\n"; } catch (Exception $e) { echo "Erro: {$e->getMessage()}\n"; } ?> ``` ## WordPress Integration ```php 10]); if (is_wp_error($response)) { return 'Erro ao buscar dados'; } $body = wp_remote_retrieve_body($response); $data = json_decode($body, true); if (isset($data['results'][0]['regularMarketPrice'])) { $price = $data['results'][0]['regularMarketPrice']; set_transient($transient_key, $price, 60); // Cache por 60 segundos return $price; } return 'Cotação indisponível'; } // Shortcode function brapi_stock_price_shortcode($atts) { $atts = shortcode_atts([ 'ticker' => 'PETR4', ], $atts); $price = brapi_get_stock_price($atts['ticker']); if (is_numeric($price)) { return 'R$ ' . number_format($price, 2, ',', '.'); } return $price; } add_shortcode('brapi_cotacao', 'brapi_stock_price_shortcode'); // Uso no WordPress: [brapi_cotacao ticker="PETR4"] ?> ``` ## Laravel ```php token = config('services.brapi.token'); } public function getQuote(string $ticker) { $cacheKey = "quote_{$ticker}"; return Cache::remember($cacheKey, 60, function () use ($ticker) { $response = Http::timeout(10) ->get("{$this->baseUrl}/quote/{$ticker}", [ 'token' => $this->token ]); if ($response->failed()) { throw new \Exception('Failed to fetch quote'); } return $response->json(); }); } public function getMultipleQuotes(array $tickers) { $tickersParam = implode(',', $tickers); $response = Http::timeout(10) ->get("{$this->baseUrl}/quote/{$tickersParam}", [ 'token' => $this->token ]); if ($response->failed()) { throw new \Exception('Failed to fetch quotes'); } return $response->json(); } } // config/services.php return [ 'brapi' => [ 'token' => env('BRAPI_TOKEN'), ], ]; // Controller namespace App\Http\Controllers; use App\Services\BrapiService; class StockController extends Controller { public function show($ticker, BrapiService $brapi) { $data = $brapi->getQuote($ticker); $quote = $data['results'][0] ?? null; return view('stock.show', compact('quote')); } } ?> ``` ## Próximos Passos * Explore [outros exemplos](/docs/examples) * Veja a [documentação completa](/docs) * Confira os [endpoints disponíveis](/docs/acoes) # Python URL: /docs/examples/python.mdx Integre a API brapi.dev em suas aplicações Python usando a biblioteca requests. Exemplos práticos para buscar cotações de ações da B3. *** title: 'Python' description: >- Integre a API brapi.dev em suas aplicações Python usando a biblioteca requests. Exemplos práticos para buscar cotações de ações da B3. full: false keywords: brapi, api, python, requests, cotações, B3 openGraph: title: Integração Python - brapi.dev description: Exemplos de integração usando Python e requests type: website locale: pt\_BR lastUpdated: '2025-10-12T17:30:00.000Z' lang: pt-BR ----------- Integre a API brapi.dev em suas aplicações Python usando nossa SDK oficial ou biblioteca requests. ## 🎉 SDK Oficial Disponível! A brapi.dev agora oferece uma **SDK oficial Python 3.8+** que facilita muito a integração: ```bash pip install brapi ``` **Vantagens da SDK:** * ✅ Type hints completos * ✅ Suporte síncrono e assíncrono * ✅ Tratamento de erros automático * ✅ Retry inteligente * ✅ Integração com asyncio e aiohttp **Exemplo rápido:** ```python from brapi import Brapi client = Brapi(api_key="seu_token") quote = client.quote.retrieve(tickers="PETR4") print(quote.results[0].regular_market_price) ``` 📚 **[Ver documentação completa da SDK](/docs/sdks/python)** *** ## Integração Manual (Sem SDK) Se preferir usar requests diretamente, veja os exemplos abaixo. ## Por Que Python para Análise Financeira? ```python import requests token = 'SEU_TOKEN' ticker = 'PETR4' url = f'https://brapi.dev/api/quote/{ticker}?token={token}' response = requests.get(url) data = response.json() print(data) ``` ## Com Tratamento de Erros ```python import requests from typing import Dict, Optional def get_quote(ticker: str, token: str) -> Optional[Dict]: """ Busca cotação de um ativo na B3 Args: ticker: Código do ativo (ex: 'PETR4') token: Token da API brapi.dev Returns: Dicionário com dados da cotação ou None em caso de erro """ url = f'https://brapi.dev/api/quote/{ticker}?token={token}' try: response = requests.get(url, timeout=10) response.raise_for_status() return response.json() except requests.exceptions.RequestException as e: print(f'Erro ao buscar cotação: {e}') return None # Uso token = 'SEU_TOKEN' data = get_quote('PETR4', token) if data and 'results' in data: quote = data['results'][0] print(f"{quote['symbol']}: R$ {quote['regularMarketPrice']:.2f}") print(f"Variação: {quote['regularMarketChangePercent']:.2f}%") ``` ## Múltiplos Tickers ```python def get_multiple_quotes(tickers: list[str], token: str) -> Optional[Dict]: """Busca cotações de múltiplos ativos""" tickers_param = ','.join(tickers) url = f'https://brapi.dev/api/quote/{tickers_param}?token={token}' try: response = requests.get(url, timeout=10) response.raise_for_status() return response.json() except requests.exceptions.RequestException as e: print(f'Erro: {e}') return None # Uso tickers = ['PETR4', 'VALE3', 'ITUB4'] data = get_multiple_quotes(tickers, token) if data: for quote in data['results']: print(f"{quote['symbol']}: R$ {quote['regularMarketPrice']:.2f}") ``` ## Classe Cliente ```python import requests from typing import Dict, List, Optional from dataclasses import dataclass from datetime import datetime @dataclass class Quote: """Representa uma cotação de ativo""" symbol: str short_name: str regular_market_price: float regular_market_change: float regular_market_change_percent: float currency: str market_cap: Optional[float] = None @classmethod def from_dict(cls, data: Dict) -> 'Quote': return cls( symbol=data['symbol'], short_name=data['shortName'], regular_market_price=data['regularMarketPrice'], regular_market_change=data['regularMarketChange'], regular_market_change_percent=data['regularMarketChangePercent'], currency=data['currency'], market_cap=data.get('marketCap') ) class BrapiClient: """Cliente para a API brapi.dev""" BASE_URL = 'https://brapi.dev/api' def __init__(self, token: str): self.token = token self.session = requests.Session() self.session.headers.update({ 'User-Agent': 'Python BrapiClient/1.0' }) def get_quote(self, ticker: str) -> Optional[Quote]: """Busca cotação de um ativo""" url = f'{self.BASE_URL}/quote/{ticker}' params = {'token': self.token} try: response = self.session.get(url, params=params, timeout=10) response.raise_for_status() data = response.json() if data.get('results'): return Quote.from_dict(data['results'][0]) return None except requests.exceptions.RequestException as e: print(f'Erro ao buscar {ticker}: {e}') return None def get_multiple_quotes(self, tickers: List[str]) -> List[Quote]: """Busca cotações de múltiplos ativos""" tickers_param = ','.join(tickers) url = f'{self.BASE_URL}/quote/{tickers_param}' params = {'token': self.token} try: response = self.session.get(url, params=params, timeout=10) response.raise_for_status() data = response.json() return [Quote.from_dict(item) for item in data.get('results', [])] except requests.exceptions.RequestException as e: print(f'Erro ao buscar cotações: {e}') return [] def __enter__(self): return self def __exit__(self, *args): self.session.close() # Uso with BrapiClient('SEU_TOKEN') as client: # Cotação única quote = client.get_quote('PETR4') if quote: print(f'{quote.symbol}: R$ {quote.regular_market_price:.2f}') print(f'Variação: {quote.regular_market_change_percent:.2f}%') # Múltiplas cotações quotes = client.get_multiple_quotes(['PETR4', 'VALE3', 'ITUB4']) for quote in quotes: print(f'{quote.symbol}: R$ {quote.regular_market_price:.2f}') ``` ## Salvando em CSV ```python import csv from datetime import datetime def save_quotes_to_csv(tickers: List[str], token: str, filename: str): """Salva cotações em arquivo CSV""" with BrapiClient(token) as client: quotes = client.get_multiple_quotes(tickers) if not quotes: print('Nenhuma cotação obtida') return with open(filename, 'w', newline='', encoding='utf-8') as csvfile: fieldnames = [ 'timestamp', 'symbol', 'short_name', 'price', 'change', 'change_percent', 'currency' ] writer = csv.DictWriter(csvfile, fieldnames=fieldnames) writer.writeheader() timestamp = datetime.now().isoformat() for quote in quotes: writer.writerow({ 'timestamp': timestamp, 'symbol': quote.symbol, 'short_name': quote.short_name, 'price': quote.regular_market_price, 'change': quote.regular_market_change, 'change_percent': quote.regular_market_change_percent, 'currency': quote.currency }) print(f'Cotações salvas em {filename}') # Uso tickers = ['PETR4', 'VALE3', 'ITUB4', 'BBDC4'] save_quotes_to_csv(tickers, 'SEU_TOKEN', 'quotes.csv') ``` ## Com Pandas ```python import pandas as pd def get_quotes_dataframe(tickers: List[str], token: str) -> pd.DataFrame: """Retorna cotações como DataFrame do pandas""" with BrapiClient(token) as client: quotes = client.get_multiple_quotes(tickers) if not quotes: return pd.DataFrame() data = [{ 'symbol': q.symbol, 'name': q.short_name, 'price': q.regular_market_price, 'change': q.regular_market_change, 'change_percent': q.regular_market_change_percent, 'currency': q.currency, 'market_cap': q.market_cap } for q in quotes] return pd.DataFrame(data) # Uso df = get_quotes_dataframe(['PETR4', 'VALE3', 'ITUB4'], 'SEU_TOKEN') print(df) # Salvar em Excel df.to_excel('quotes.xlsx', index=False) ``` ## Aplicação Flask ```python from flask import Flask, jsonify import os app = Flask(__name__) BRAPI_TOKEN = os.environ.get('BRAPI_TOKEN') @app.route('/api/quote/ ') def get_quote_api(ticker): """Endpoint para buscar cotação""" with BrapiClient(BRAPI_TOKEN) as client: quote = client.get_quote(ticker) if not quote: return jsonify({'error': 'Quote not found'}), 404 return jsonify({ 'symbol': quote.symbol, 'name': quote.short_name, 'price': quote.regular_market_price, 'change_percent': quote.regular_market_change_percent }) if __name__ == '__main__': app.run(debug=True) ``` ## Boas Práticas 1. **Use variáveis de ambiente** para o token 2. **Implemente timeout** nas requisições 3. **Trate erros** adequadamente 4. **Use sessões** para melhor performance 5. **Feche conexões** quando não precisar mais ## Variáveis de Ambiente ```python import os from dotenv import load_dotenv load_dotenv() # Carrega .env token = os.environ.get('BRAPI_TOKEN') if not token: raise ValueError('BRAPI_TOKEN não configurado') ``` Arquivo `.env`: ``` BRAPI_TOKEN=seu_token_aqui ``` ## Próximos Passos * Explore [outros exemplos](/docs/examples) * Veja a [documentação completa](/docs) * Confira os [endpoints disponíveis](/docs/acoes) # React Native URL: /docs/examples/react-native.mdx Integre a API brapi.dev em aplicações React Native. Componentes para exibir cotações de ações da B3 em apps mobile. *** title: 'React Native' description: >- Integre a API brapi.dev em aplicações React Native. Componentes para exibir cotações de ações da B3 em apps mobile. full: false keywords: brapi, api, react native, mobile, cotações, hooks openGraph: title: Integração React Native - brapi.dev description: Componentes React Native para cotações da B3 type: website locale: pt\_BR lastUpdated: '2025-10-12T17:30:00.000Z' lang: pt-BR ----------- Integre a API brapi.dev em suas aplicações React Native. ## Componente Básico ```javascript import React, { useState, useEffect } from 'react'; import { View, Text, StyleSheet, ActivityIndicator } from 'react-native'; const StockPrice = ({ ticker }) => { const [price, setPrice] = useState(null); const [loading, setLoading] = useState(true); const [error, setError] = useState(null); useEffect(() => { const token = 'SEU_TOKEN'; const fetchPrice = async () => { try { const response = await fetch( `https://brapi.dev/api/quote/${ticker}?token=${token}` ); if (!response.ok) { throw new Error('Erro ao buscar cotação'); } const data = await response.json(); setPrice(data.results[0]); } catch (error) { setError(error.message); } finally { setLoading(false); } }; fetchPrice(); }, [ticker]); if (loading) { return ( ); } if (error) { return ( ); } if (!price) return null; const isPositive = price.regularMarketChangePercent > 0; return ( {error} ); }; const styles = StyleSheet.create({ container: { padding: 16, backgroundColor: '#ffffff', borderRadius: 12, marginBottom: 12, shadowColor: '#000', shadowOffset: { width: 0, height: 2 }, shadowOpacity: 0.1, shadowRadius: 4, elevation: 3, }, ticker: { fontSize: 18, fontWeight: 'bold', color: '#333', }, name: { fontSize: 14, color: '#666', marginTop: 4, }, price: { fontSize: 24, fontWeight: 'bold', color: '#000', marginTop: 8, }, change: { fontSize: 16, fontWeight: '600', marginTop: 4, }, positive: { color: '#10b981', }, negative: { color: '#ef4444', }, error: { color: '#ef4444', fontSize: 14, }, }); export default StockPrice; ``` ## Com Custom Hook ```javascript import { useState, useEffect } from 'react'; const useBrapiQuote = (ticker, token) => { const [data, setData] = useState(null); const [loading, setLoading] = useState(true); const [error, setError] = useState(null); useEffect(() => { let isMounted = true; const fetchQuote = async () => { try { const response = await fetch( `https://brapi.dev/api/quote/${ticker}?token=${token}` ); if (!response.ok) { throw new Error(`HTTP ${response.status}`); } const json = await response.json(); if (isMounted) { setData(json.results[0]); setError(null); } } catch (err) { if (isMounted) { setError(err.message); setData(null); } } finally { if (isMounted) { setLoading(false); } } }; fetchQuote(); return () => { isMounted = false; }; }, [ticker, token]); return { data, loading, error }; }; // Uso const StockCard = ({ ticker }) => { const { data, loading, error } = useBrapiQuote(ticker, 'SEU_TOKEN'); if (loading) return {price.symbol} {price.shortName} R$ {price.regularMarketPrice.toFixed(2)} {isPositive ? '+' : ''}{price.regularMarketChangePercent.toFixed(2)}% ; if (error) return Erro: {error} ; if (!data) return null; return (); }; ``` ## Lista de Cotações ```javascript import React from 'react'; import { FlatList, View } from 'react-native'; const StockList = () => { const tickers = ['PETR4', 'VALE3', 'ITUB4', 'BBDC4', 'MGLU3']; return ( {data.symbol}: R$ {data.regularMarketPrice.toFixed(2)} item} renderItem={({ item }) => } contentContainerStyle={{ padding: 16 }} /> ); }; ``` ## Próximos Passos * Veja exemplos em [TypeScript](/docs/examples/typescript) * Explore [outros exemplos](/docs/examples) # TypeScript / JavaScript URL: /docs/examples/typescript.mdx Exemplos de integração da API brapi.dev usando TypeScript e JavaScript com fetch nativo e Axios. Aprenda a buscar cotações de ações da B3 em aplicações web e Node.js. *** title: 'TypeScript / JavaScript' description: >- Exemplos de integração da API brapi.dev usando TypeScript e JavaScript com fetch nativo e Axios. Aprenda a buscar cotações de ações da B3 em aplicações web e Node.js. full: false keywords: brapi, api, typescript, javascript, fetch, axios, node.js, web openGraph: title: Integração TypeScript/JavaScript - brapi.dev description: >- Exemplos práticos de integração com fetch e Axios para buscar cotações da B3 type: website locale: pt\_BR lastUpdated: '2025-10-12T17:30:00.000Z' lang: pt-BR ----------- Integre a API brapi.dev em suas aplicações TypeScript e JavaScript usando nossa SDK oficial ou fetch/Axios. ## 🎉 SDK Oficial Disponível! A brapi.dev agora oferece uma **SDK oficial TypeScript/JavaScript** que facilita muito a integração: ```bash npm install brapi ``` **Vantagens da SDK:** * ✅ Tipos TypeScript completos com IntelliSense * ✅ Tratamento de erros automático * ✅ Retry inteligente em falhas * ✅ Suporte a Node.js e navegador **Exemplo rápido:** ```typescript import Brapi from 'brapi'; const client = new Brapi({ apiKey: process.env.BRAPI_API_KEY, }); const quote = await client.quote.retrieve('PETR4'); console.log(quote.results[0].regularMarketPrice); ``` 📚 **[Ver documentação completa da SDK](/docs/sdks/typescript)** *** ## Integração Manual (Sem SDK) Se preferir fazer requisições HTTP diretamente, veja os exemplos abaixo. ## Usando Fetch (Nativo) O fetch é nativo em navegadores modernos e Node.js 18+, sem necessidade de bibliotecas externas. ### Exemplo Básico ```typescript const fetchQuote = async () => { const token = 'SEU_TOKEN'; const ticker = 'PETR4'; const response = await fetch( `https://brapi.dev/api/quote/${ticker}?token=${token}` ); const data = await response.json(); console.log(data); }; fetchQuote(); ``` ### Com Tratamento de Erros ```typescript interface QuoteResult { results: Array<{ symbol: string; shortName: string; regularMarketPrice: number; regularMarketChange: number; regularMarketChangePercent: number; currency: string; }>; } const fetchQuote = async (ticker: string): Promise => { const token = process.env.BRAPI_TOKEN || 'SEU_TOKEN'; try { const response = await fetch( `https://brapi.dev/api/quote/${ticker}?token=${token}` ); if (!response.ok) { throw new Error(`HTTP error! status: ${response.status}`); } const data: QuoteResult = await response.json(); return data; } catch (error) { console.error('Erro ao buscar cotação:', error); return null; } }; // Uso fetchQuote('PETR4').then(data => { if (data && data.results[0]) { const quote = data.results[0]; console.log(`${quote.symbol}: R$ ${quote.regularMarketPrice}`); } }); ``` ### Múltiplos Tickers ```typescript const fetchMultipleQuotes = async (tickers: string[]) => { const token = 'SEU_TOKEN'; const tickersParam = tickers.join(','); const response = await fetch( `https://brapi.dev/api/quote/${tickersParam}?token=${token}` ); const data = await response.json(); return data.results; }; // Uso fetchMultipleQuotes(['PETR4', 'VALE3', 'ITUB4']).then(quotes => { quotes.forEach(quote => { console.log(`${quote.symbol}: R$ ${quote.regularMarketPrice}`); }); }); ``` ## Usando Axios Axios é uma biblioteca popular para fazer requisições HTTP, com sintaxe mais simples e recursos adicionais. ### Instalação ```bash npm install axios # ou yarn add axios # ou bun add axios ``` ### Exemplo Básico ```typescript import axios from 'axios'; const token = 'SEU_TOKEN'; const ticker = 'PETR4'; const url = `https://brapi.dev/api/quote/${ticker}?token=${token}`; async function fetchQuote() { try { const response = await axios.get(url); console.log(response.data); } catch (error) { console.error('Erro ao buscar cotação:', error); } } fetchQuote(); ``` ### Com TypeScript e Interface ```typescript import axios, { AxiosError } from 'axios'; interface BrapiQuoteResponse { results: Array<{ symbol: string; shortName: string; longName: string; currency: string; regularMarketPrice: number; regularMarketDayHigh: number; regularMarketDayLow: number; regularMarketVolume: number; regularMarketChange: number; regularMarketChangePercent: number; regularMarketTime: string; marketCap: number; fiftyTwoWeekLow: number; fiftyTwoWeekHigh: number; }>; requestedAt: string; took: string; } class BrapiClient { private baseUrl = 'https://brapi.dev/api'; private token: string; constructor(token: string) { this.token = token; } async getQuote(ticker: string): Promise { try { const response = await axios.get ( `${this.baseUrl}/quote/${ticker}`, { params: { token: this.token } } ); return response.data; } catch (error) { if (axios.isAxiosError(error)) { const axiosError = error as AxiosError; throw new Error( `Erro na API: ${axiosError.response?.status} - ${axiosError.message}` ); } throw error; } } async getMultipleQuotes(tickers: string[]): Promise { const tickersParam = tickers.join(','); return this.getQuote(tickersParam); } } // Uso const client = new BrapiClient(process.env.BRAPI_TOKEN!); client.getQuote('PETR4').then(data => { const quote = data.results[0]; console.log(`${quote.symbol}: R$ ${quote.regularMarketPrice}`); console.log(`Variação: ${quote.regularMarketChangePercent.toFixed(2)}%`); }); ``` ## Exemplo Next.js (App Router) ### Server Component ```typescript // app/stock/[ticker]/page.tsx import { Suspense } from 'react'; interface QuoteData { results: Array<{ symbol: string; shortName: string; regularMarketPrice: number; regularMarketChangePercent: number; }>; } async function getQuote(ticker: string): Promise { const token = process.env.BRAPI_TOKEN; const res = await fetch( `https://brapi.dev/api/quote/${ticker}?token=${token}`, { next: { revalidate: 60 } } // Cache por 60 segundos ); if (!res.ok) { throw new Error('Failed to fetch quote'); } return res.json(); } export default async function StockPage({ params, }: { params: { ticker: string }; }) { const data = await getQuote(params.ticker); const quote = data.results[0]; return ( ); } ``` ### Client Component com SWR ```typescript 'use client'; import useSWR from 'swr'; const fetcher = (url: string) => fetch(url).then(r => r.json()); export function StockQuote({ ticker }: { ticker: string }) { const { data, error, isLoading } = useSWR( `/api/quote/${ticker}`, fetcher, { refreshInterval: 60000 } // Atualiza a cada 60 segundos ); if (error) return{quote.shortName}
R$ {quote.regularMarketPrice.toFixed(2)}
0 ? 'text-green-600' : 'text-red-600'}> {quote.regularMarketChangePercent.toFixed(2)}%
Erro ao carregar cotação; if (isLoading) returnCarregando...; const quote = data.results[0]; return (); } ``` ### API Route ```typescript // app/api/quote/[ticker]/route.ts import { NextResponse } from 'next/server'; export async function GET( request: Request, { params }: { params: { ticker: string } } ) { const token = process.env.BRAPI_TOKEN; try { const response = await fetch( `https://brapi.dev/api/quote/${params.ticker}?token=${token}` ); if (!response.ok) { return NextResponse.json( { error: 'Failed to fetch quote' }, { status: response.status } ); } const data = await response.json(); return NextResponse.json(data); } catch (error) { return NextResponse.json( { error: 'Internal server error' }, { status: 500 } ); } } ``` ## Node.js com Cache ```typescript import axios from 'axios'; class BrapiService { private cache = new Map{quote.symbol}
R$ {quote.regularMarketPrice.toFixed(2)}
(); private cacheDuration = 60000; // 60 segundos constructor(private token: string) {} async getQuote(ticker: string) { const cached = this.cache.get(ticker); const now = Date.now(); if (cached && now - cached.timestamp < this.cacheDuration) { return cached.data; } const response = await axios.get( `https://brapi.dev/api/quote/${ticker}?token=${this.token}` ); this.cache.set(ticker, { data: response.data, timestamp: now }); return response.data; } } // Uso const service = new BrapiService(process.env.BRAPI_TOKEN!); const data = await service.getQuote('PETR4'); ``` ## Boas Práticas 1. **Armazene o token em variáveis de ambiente**: Nunca exponha o token no código 2. **Implemente cache**: Evite requisições desnecessárias 3. **Trate erros adequadamente**: Sempre use try/catch ou .catch() 4. **Use tipos TypeScript**: Aproveite a tipagem para melhor DX 5. **Respeite os limites**: Monitore o uso de requisições ## Próximos Passos * Veja exemplos em [outras linguagens](/docs/examples) * Explore a [documentação completa da API](/docs) * Confira os [endpoints disponíveis](/docs/acoes) # WordPress URL: /docs/examples/wordpress.mdx Integre cotações da B3 no WordPress usando shortcodes e a API brapi.dev. Exiba preços de ações em posts e páginas. *** title: 'WordPress' description: >- Integre cotações da B3 no WordPress usando shortcodes e a API brapi.dev. Exiba preços de ações em posts e páginas. full: false keywords: brapi, api, wordpress, shortcode, php, cotações openGraph: title: Integração WordPress - brapi.dev description: Exiba cotações da B3 no WordPress com shortcodes type: website locale: pt\_BR lastUpdated: '2025-10-12T17:30:00.000Z' lang: pt-BR ----------- Integre cotações da B3 no WordPress usando shortcodes personalizados. ## Implementação Adicione este código ao arquivo `functions.php` do seu tema ou em um plugin personalizado: ```php 10]); if (is_wp_error($response)) { return 'Erro ao buscar dados'; } $body = wp_remote_retrieve_body($response); $data = json_decode($body, true); if (isset($data['results'][0]['regularMarketPrice'])) { $price = $data['results'][0]['regularMarketPrice']; set_transient($transient_key, $price, 60); return $price; } return 'Cotação indisponível'; } function brapi_stock_price_shortcode($atts) { $atts = shortcode_atts([ 'ticker' => 'PETR4', ], $atts); $price = brapi_get_stock_price($atts['ticker']); if (is_numeric($price)) { return 'R$ ' . number_format($price, 2, ',', '.'); } return $price; } add_shortcode('brapi_cotacao', 'brapi_stock_price_shortcode'); ?> ``` ## Uso no WordPress Use o shortcode em posts e páginas: ``` [brapi_cotacao ticker="PETR4"] ``` Exemplos: ``` [brapi_cotacao ticker="VALE3"] [brapi_cotacao ticker="ITUB4"] [brapi_cotacao ticker="IMAB11"] ``` ## Com Widget Gutenberg Para criar um bloco customizado: ```php 'brapi-block', 'render_callback' => 'brapi_render_block' ]); } add_action('init', 'brapi_register_block'); function brapi_render_block($attributes) { $ticker = $attributes['ticker'] ?? 'PETR4'; return brapi_stock_price_shortcode(['ticker' => $ticker]); } ?> ``` ## Próximos Passos * Veja exemplos em [PHP](/docs/examples/php) * Explore [outros exemplos](/docs/examples) # Listar Moedas URL: /docs/moedas/available.mdx Endpoints para consulta de Moedas Fiduciárias. Atualmente, focado na listagem das moedas disponíveis para conversão ou consulta de taxas de câmbio (embora o endpoint de cotação de moedas não esteja detalhado aqui, a listagem está disponível). *** title: Listar Moedas description: >- Endpoints para consulta de Moedas Fiduciárias. Atualmente, focado na listagem das moedas disponíveis para conversão ou consulta de taxas de câmbio (embora o endpoint de cotação de moedas não esteja detalhado aqui, a listagem está disponível). full: true keywords: brapi, api, documentação, moedas openGraph: title: Listar Moedas description: >- Endpoints para consulta de Moedas Fiduciárias. Atualmente, focado na listagem das moedas disponíveis para conversão ou consulta de taxas de câmbio (embora o endpoint de cotação de moedas não esteja detalhado aqui, a listagem está disponível). type: website locale: pt\_BR lastUpdated: '2025-04-28T01:22:35.254Z' lang: pt-BR \_openapi: method: GET route: /api/v2/currency/available toc: * depth: 2 title: Listar Todas as Moedas Fiduciárias Disponíveis url: '#listar-todas-as-moedas-fiduciárias-disponíveis' structuredData: headings: * content: Listar Todas as Moedas Fiduciárias Disponíveis id: listar-todas-as-moedas-fiduciárias-disponíveis contents: * content: >- Obtenha a lista completa de todas as moedas fiduciárias suportadas pela API, geralmente utilizadas no parâmetro `currency` de outros endpoints (como o de criptomoedas) ou para futuras funcionalidades de conversão. ### Funcionalidade: * Retorna um array `currencies` com os nomes das moedas. * Pode ser filtrado usando o parâmetro `search`. ### Autenticação: Requer token de autenticação via `token` (query) ou `Authorization` (header). ### Exemplo de Requisição: **Listar todas as moedas disponíveis:** ```bash curl -X GET "https://brapi.dev/api/v2/currency/available?token=SEU_TOKEN" ``` **Buscar moedas cujo nome contenha 'Euro':** ```bash curl -X GET "https://brapi.dev/api/v2/currency/available?search=Euro&token=SEU_TOKEN" ``` ### Resposta: A resposta é um objeto JSON com a chave `currencies`, contendo um array de objetos. Cada objeto possui uma chave `currency` com o nome completo da moeda (ex: `"Dólar Americano/Real Brasileiro"`). **Nota:** O formato do nome pode indicar um par de moedas, dependendo do contexto interno da API. heading: listar-todas-as-moedas-fiduciárias-disponíveis *** Endpoints para consulta de **Moedas Fiduciárias**. Atualmente, focado na listagem das moedas disponíveis para conversão ou consulta de taxas de câmbio (embora o endpoint de cotação de moedas não esteja detalhado aqui, a listagem está disponível). ## Swagger Documentation # Brapi - API do Mercado Financeiro Brasileiro - /api/v2/currency/available Single endpoint documentation for /api/v2/currency/available ## Base URLs - `https://brapi.dev` - Servidor principal da API Brapi - `http://localhost:3000` - Servidor local para desenvolvimento ## GET /api/v2/currency/available **Summary:** Listar Todas as Moedas Fiduciárias Disponíveis Obtenha a lista completa de todas as moedas fiduciárias suportadas pela API, geralmente utilizadas no parâmetro `currency` de outros endpoints (como o de criptomoedas) ou para futuras funcionalidades de conversão. ### Funcionalidade: * Retorna um array `currencies` com os nomes das moedas. * Pode ser filtrado usando o parâmetro `search`. ### Autenticação: Requer token de autenticação via `token` (query) ou `Authorization` (header). ### Exemplo de Requisição: **Listar todas as moedas disponíveis:** ```bash curl -X GET "https://brapi.dev/api/v2/currency/available?token=SEU_TOKEN" ``` **Buscar moedas cujo nome contenha 'Euro':** ```bash curl -X GET "https://brapi.dev/api/v2/currency/available?search=Euro&token=SEU_TOKEN" ``` ### Resposta: A resposta é um objeto JSON com a chave `currencies`, contendo um array de objetos. Cada objeto possui uma chave `currency` com o nome completo da moeda (ex: `"Dólar Americano/Real Brasileiro"`). **Nota:** O formato do nome pode indicar um par de moedas, dependendo do contexto interno da API. **Tags:** Moedas ### Parameters - **search** (query): **Opcional.** Termo para filtrar a lista pelo nome da moeda (correspondência parcial, case-insensitive). - **undefined** (undefined) ### Responses #### 200 **Sucesso.** Retorna a lista de moedas disponíveis, possivelmente filtrada. **Example Response:** ```json { "currencies": [ { "name": "USD-BRL", "currency": "Dólar Americano/Real Brasileiro" }, { "name": "EUR-BRL", "currency": "Euro/Real Brasileiro" } ] } ``` #### 401 #### 404 **Not Found.** Nenhuma moeda encontrada correspondendo ao critério de busca (`search`) informado. **Example Response:** ```json { "error": true, "message": "Currency not found" } ``` ## Schemas The following schemas are used by this endpoint: ### CurrencyAvailableResponse Resposta do endpoint que lista todas as moedas fiduciárias disponíveis. **Properties:** - **currencies** (array) Lista de objetos, cada um contendo o nome de uma moeda fiduciária ou par suportado pela API. Array items: **Properties:** - **currency** (string) Nome da moeda ou par de moedas suportado (ex: `Dólar Americano/Real Brasileiro`, `Euro/Real Brasileiro`). A sigla pode ser extraída deste nome ou consultada em documentação adicional. ### ErrorResponse Schema padrão para respostas de erro da API. **Properties:** - **error** (boolean) *(required)* Indica se a requisição resultou em erro. Sempre `true` para este schema. - **message** (string) *(required)* Mensagem descritiva do erro ocorrido. # Cotação de Moedas URL: /docs/moedas.mdx Endpoints para consulta de Moedas Fiduciárias. Atualmente, focado na listagem das moedas disponíveis para conversão ou consulta de taxas de câmbio. *** title: Cotação de Moedas description: >- Endpoints para consulta de Moedas Fiduciárias. Atualmente, focado na listagem das moedas disponíveis para conversão ou consulta de taxas de câmbio. full: true keywords: brapi, api, documentação, moedas openGraph: title: Cotação de Moedas description: >- Endpoints para consulta de Moedas Fiduciárias. Atualmente, focado na listagem das moedas disponíveis para conversão ou consulta de taxas de câmbio. type: website locale: pt\_BR lastUpdated: '2025-04-28T01:22:35.254Z' lang: pt-BR \_openapi: method: GET route: /api/v2/currency/available toc: * depth: 2 title: Listar Todas as Moedas Fiduciárias Disponíveis url: '#listar-todas-as-moedas-fiduciárias-disponíveis' structuredData: headings: * content: Listar Todas as Moedas Fiduciárias Disponíveis id: listar-todas-as-moedas-fiduciárias-disponíveis contents: * content: >- Obtenha cotações atualizadas para um ou mais pares de moedas fiduciárias (ex: USD-BRL, EUR-USD). ### Funcionalidades: * **Cotação Múltipla:** Consulte vários pares de moedas em uma única requisição usando o parâmetro `currency`. \* **Dados Retornados:** Inclui nome do par, preços de compra (bid) e venda (ask), variação, máximas e mínimas, e timestamp da atualização. ### Parâmetros: * **`currency` (Obrigatório):** Uma lista de pares de moedas separados por vírgula, no formato `MOEDA_ORIGEM-MOEDA_DESTINO` (ex: `USD-BRL`, `EUR-USD`). Consulte os pares disponíveis em [`/api/v2/currency/available`](#/Moedas/getAvailableCurrencies). * **`token` (Obrigatório):** Seu token de autenticação. ### Autenticação: Requer token de autenticação válido via `token` (query) ou `Authorization` (header). ### Estrutura da Resposta (200 OK): A resposta bem-sucedida (`CurrencyResponse`) contém um array `currency`. Cada objeto dentro deste array (`CurrencyQuote`) representa um par solicitado e inclui: \* `fromCurrency`: Sigla da moeda de origem. \* `toCurrency`: Sigla da moeda de destino. * `name`: Nome descritivo do par. \* `high`, `low`: Preços máximo e mínimo do período recente. \* `bidVariation`, `percentageChange`: Variação absoluta e percentual. \* `bidPrice`, `askPrice`: Preços de compra e venda atuais. \* `updatedAtTimestamp`, `updatedAtDate`: Timestamps da última atualização. ````json { \"currency\": [ { \"fromCurrency\": \"USD\", \"toCurrency\": \"BRL\", \"name\": \"Dólar Americano/Real Brasileiro\", \"high\": \"5.22\", \"low\": \"5.162\", \"bidVariation\": \"0.0454\", \"percentageChange\": \"0.88\", \"bidPrice\": \"5.2097\", \"askPrice\": \"5.2127\", \"updatedAtTimestamp\": \"1696601423\", \"updatedAtDate\": \"2023-10-06 11:10:23\" }, { \"fromCurrency\": \"EUR\", \"toCurrency\": \"USD\", \"name\": \"Euro/Dólar Americano\", \"high\": \"1.0568\", \"low\": \"1.0482\", \"bidVariation\": \"-0.0037\", \"percentageChange\": \"-0.35\", \"bidPrice\": \"1.051\", \"askPrice\": \"1.0511\", \"updatedAtTimestamp\": \"1696601456\", \"updatedAtDate\": \"2023-10-06 11:10:56\" } ] } ``` heading: listar-todas-as-moedas-fiduciárias-disponíveis ```` *** Endpoints para consulta de **Moedas Fiduciárias**. Atualmente, focado na listagem das moedas disponíveis para conversão ou consulta de taxas de câmbio. ## Swagger Documentation # Brapi - API do Mercado Financeiro Brasileiro - /api/v2/currency Single endpoint documentation for /api/v2/currency ## Base URLs - `https://brapi.dev` - Servidor principal da API Brapi - `http://localhost:3000` - Servidor local para desenvolvimento ## GET /api/v2/currency **Summary:** Buscar Cotação de Pares de Moedas Fiduciárias Obtenha cotações atualizadas para um ou mais pares de moedas fiduciárias (ex: USD-BRL, EUR-USD). ### Funcionalidades: * **Cotação Múltipla:** Consulte vários pares de moedas em uma única requisição usando o parâmetro `currency`. * **Dados Retornados:** Inclui nome do par, preços de compra (bid) e venda (ask), variação, máximas e mínimas, e timestamp da atualização. ### Parâmetros: * **`currency` (Obrigatório):** Uma lista de pares de moedas separados por vírgula, no formato `MOEDA_ORIGEM-MOEDA_DESTINO` (ex: `USD-BRL`, `EUR-USD`). Consulte os pares disponíveis em [`/api/v2/currency/available`](#/Moedas/getAvailableCurrencies). * **`token` (Obrigatório):** Seu token de autenticação. ### Autenticação: Requer token de autenticação válido via `token` (query) ou `Authorization` (header). **Tags:** Moedas ### Parameters - **currency** (query) *required*: **Obrigatório.** Uma lista de um ou mais pares de moedas a serem consultados, separados por vírgula (`,`). * **Formato:** `MOEDA_ORIGEM-MOEDA_DESTINO` (ex: `USD-BRL`). * **Disponibilidade:** Consulte os pares válidos usando o endpoint [`/api/v2/currency/available`](#/Moedas/getAvailableCurrencies). * **Exemplo:** `USD-BRL,EUR-BRL,BTC-BRL` - **undefined** (undefined) ### Responses #### 200 **Sucesso (OK).** A requisição foi bem-sucedida e as cotações dos pares de moedas solicitados foram retornadas no array `currency`. #### 400 **Bad Request (Requisição Inválida).** A requisição foi malformada, um par de moeda no parâmetro `currency` é inválido, não existe ou houve outro erro ao buscar os dados. **Example Response:** ```json { "error": true, "message": "Algo deu errado ao buscar essa moeda" } ``` #### 401 #### 417 **Expectation Failed (Falha na Expectativa).** O parâmetro obrigatório `currency` não foi fornecido na requisição. **Example Response:** ```json { "error": true, "message": "Não foi possível encontrar o parâmetro obrigatório: 'currency', exemplo: https://brapi.dev/api/v2/currency?currency=USD-BRL" } ``` ## Schemas The following schemas are used by this endpoint: ### CurrencyQuote Contém os dados detalhados da cotação de um **par de moedas fiduciárias específico**, retornado como um elemento do array `currency` no endpoint `/api/v2/currency`. **Properties:** - **fromCurrency** (string) *(required)* **Moeda de Origem:** Sigla da moeda base do par (ex: `USD` em `USD-BRL`). - **toCurrency** (string) *(required)* **Moeda de Destino:** Sigla da moeda de cotação do par (ex: `BRL` em `USD-BRL`). - **name** (string) *(required)* **Nome do Par:** Nome descritivo do par de moedas (ex: `Dólar Americano/Real Brasileiro`). - **high** (string) *(required)* **Máxima:** Preço mais alto atingido pelo par no período recente (geralmente diário). Formato String. - **low** (string) *(required)* **Mínima:** Preço mais baixo atingido pelo par no período recente (geralmente diário). Formato String. - **bidVariation** (string) *(required)* **Variação Absoluta (Bid):** Mudança absoluta no preço de compra (bid) desde o último fechamento ou período de referência. Formato String. - **percentageChange** (string) *(required)* **Variação Percentual:** Mudança percentual no preço do par desde o último fechamento ou período de referência. Formato String. - **bidPrice** (string) *(required)* **Preço de Compra (Bid):** Preço atual pelo qual o mercado está disposto a comprar a moeda de origem (`fromCurrency`) pagando com a moeda de destino (`toCurrency`). Formato String. - **askPrice** (string) *(required)* **Preço de Venda (Ask):** Preço atual pelo qual o mercado está disposto a vender a moeda de origem (`fromCurrency`) recebendo a moeda de destino (`toCurrency`). Formato String. - **updatedAtTimestamp** (string) *(required)* **Timestamp da Atualização:** Data e hora da última atualização da cotação, representada como um **timestamp UNIX** (string contendo o número de segundos desde 1970-01-01 UTC). - **updatedAtDate** (string) *(required)* **Data da Atualização:** Data e hora da última atualização da cotação, formatada de forma legível (`YYYY-MM-DD HH:MM:SS`). ### CurrencyResponse Estrutura da **resposta principal** do endpoint `GET /api/v2/currency`. **Properties:** - **currency** (array) *(required)* Array contendo os objetos `CurrencyQuote`, um para cada par de moeda válido solicitado no parâmetro `currency`. Array items: Reference to: **CurrencyQuote** ### ErrorResponse Schema padrão para respostas de erro da API. **Properties:** - **error** (boolean) *(required)* Indica se a requisição resultou em erro. Sempre `true` para este schema. - **message** (string) *(required)* Mensagem descritiva do erro ocorrido. # SDKs Oficiais URL: /docs/sdks.mdx SDKs oficiais da brapi.dev para TypeScript/JavaScript e Python. Integre a API da B3 com tipos completos, retry automático e tratamento de erros inteligente. *** title: 'SDKs Oficiais' description: >- SDKs oficiais da brapi.dev para TypeScript/JavaScript e Python. Integre a API da B3 com tipos completos, retry automático e tratamento de erros inteligente. full: false keywords: brapi, sdk, typescript, python, npm, pypi, api client, developer tools openGraph: title: SDKs Oficiais - brapi.dev description: >- Bibliotecas oficiais para integração rápida e tipada com a API da B3 type: website locale: pt\_BR lastUpdated: '2025-10-12T20:10:00.000Z' lang: pt-BR ----------- Bibliotecas oficiais que facilitam a integração com a API da B3, oferecendo tipos completos, tratamento de erros automático e experiência de desenvolvimento otimizada. ## Por Que Usar Nossas SDKs? ### Antes (Requisições HTTP Manuais) ```typescript const response = await fetch( `https://brapi.dev/api/quote/PETR4?token=${token}` ); if (!response.ok) throw new Error(`HTTP ${response.status}`); const data = await response.json(); const price = data.results[0].regularMarketPrice; // Sem tipos 😢 ``` ### Depois (Com SDKs) ```typescript const quote = await client.quote.retrieve('PETR4'); const price = quote.results[0].regularMarketPrice; // ✅ Tipos completos! ``` **Benefícios:** * ✅ **60% menos código** * ✅ **Tipos completos** - IntelliSense e autocomplete * ✅ **Retry automático** - Tratamento inteligente de falhas * ✅ **Erros tipados** - Exceções específicas por status * ✅ **Sempre atualizado** - Sincronizado com a API *** ## SDKs Disponíveis ### TypeScript / JavaScript SDK oficial para TypeScript e JavaScript com suporte a Node.js e navegador. #### Instalação ```bash npm install brapi # ou yarn add brapi # ou pnpm add brapi # ou bun add brapi ``` #### Exemplo Rápido ```typescript import Brapi from 'brapi'; const client = new Brapi({ apiKey: process.env.BRAPI_API_KEY, }); const quote = await client.quote.retrieve('PETR4'); console.log(quote.results[0].regularMarketPrice); ``` #### Características * ✅ Tipos TypeScript completos * ✅ Suporte Node.js e Browser * ✅ Tree-shakeable (bundle otimizado) * ✅ Integração Next.js, Express, etc. * ✅ Retry automático configurável **Links:** * 📚 [Documentação completa](/docs/sdks/typescript) * 📦 [NPM Package](https://www.npmjs.com/package/brapi) * 🔧 [GitHub Repository](https://github.com/brapi-dev/brapi-typescript) *** ### Python SDK oficial para Python 3.8+ com suporte síncrono e assíncrono. #### Instalação ```bash pip install brapi # Com suporte a aiohttp (opcional, melhor performance) pip install brapi[aiohttp] ``` #### Exemplo Rápido (Síncrono) ```python from brapi import Brapi client = Brapi(api_key="seu_token") quote = client.quote.retrieve(tickers="PETR4") print(quote.results[0].regular_market_price) ``` #### Exemplo Rápido (Assíncrono) ```python import asyncio from brapi import AsyncBrapi async def main(): async with AsyncBrapi(api_key="seu_token") as client: quote = await client.quote.retrieve(tickers="PETR4") print(quote.results[0].regular_market_price) asyncio.run(main()) ``` #### Características * ✅ Type hints completos * ✅ Cliente síncrono e assíncrono * ✅ Powered by httpx (HTTP/2) * ✅ Integração Flask, FastAPI, Pandas * ✅ Context managers **Links:** * 📚 [Documentação completa](/docs/sdks/python) * 📦 [PyPI Package](https://pypi.org/project/brapi/) * 🔧 [GitHub Repository](https://github.com/brapi-dev/brapi-python) *** ## Comparação de Features | Feature | TypeScript/JS | Python | | ---------------- | ------------- | ------------ | | Tipos completos | ✅ TypeScript | ✅ Type hints | | Autocomplete IDE | ✅ | ✅ | | Sync/Async | ✅ Async | ✅ Ambos | | Retry automático | ✅ | ✅ | | Erros tipados | ✅ | ✅ | | HTTP/2 | ✅ | ✅ | | Bundle size | 📦 Pequeno | N/A | | Python 3.8+ | N/A | ✅ | | Node.js/Browser | ✅ | N/A | *** ## Casos de Uso ### 1. Aplicações Web **Next.js / React:** ```typescript import Brapi from 'brapi'; // Server Component const client = new Brapi({ apiKey: process.env.BRAPI_API_KEY }); const quote = await client.quote.retrieve('PETR4'); ``` **FastAPI / Flask:** ```python from fastapi import FastAPI from brapi import AsyncBrapi app = FastAPI() client = AsyncBrapi(api_key="seu_token") @app.get("/quote/{ticker}") async def get_quote(ticker: str): quote = await client.quote.retrieve(tickers=ticker) return quote.results[0] ``` ### 2. Análise de Dados **Python com Pandas:** ```python import pandas as pd from brapi import Brapi client = Brapi(api_key="seu_token") # Buscar múltiplas cotações tickers = "PETR4,VALE3,ITUB4" quote = client.quote.retrieve(tickers=tickers) # Converter para DataFrame df = pd.DataFrame([ { 'symbol': r.symbol, 'price': r.regular_market_price, 'change': r.regular_market_change_percent } for r in quote.results ]) print(df) ``` ### 3. Scripts e Automação **Monitoramento de Preços:** ```python from brapi import Brapi import time client = Brapi(api_key="seu_token") while True: quote = client.quote.retrieve(tickers="PETR4") price = quote.results[0].regular_market_price print(f"PETR4: R$ {price:.2f}") time.sleep(60) # Atualiza a cada minuto ``` ### 4. APIs e Microsserviços **Express.js API:** ```typescript import express from 'express'; import Brapi from 'brapi'; const app = express(); const client = new Brapi({ apiKey: process.env.BRAPI_API_KEY }); app.get('/api/quote/:ticker', async (req, res) => { try { const quote = await client.quote.retrieve(req.params.ticker); res.json(quote); } catch (error) { res.status(500).json({ error: error.message }); } }); app.listen(3000); ``` ### 5. Dashboards e Visualizações **TypeScript com Chart.js:** ```typescript const client = new Brapi({ apiKey: process.env.BRAPI_API_KEY }); async function updateChart() { const quote = await client.quote.retrieve('PETR4,VALE3,ITUB4'); const labels = quote.results.map(r => r.symbol); const prices = quote.results.map(r => r.regularMarketPrice); // Atualizar gráfico com os dados chart.data.labels = labels; chart.data.datasets[0].data = prices; chart.update(); } ``` *** ## Recursos Suportados Ambas as SDKs suportam todos os endpoints da API: ### Mercado Brasileiro (B3) * ✅ **Cotações** - Ações, ETFs, FIIs, BDRs * ✅ **Dados fundamentalistas** - Balanços, DRE, indicadores * ✅ **Dividendos** - Histórico de proventos * ✅ **Histórico** - Preços históricos ### Criptomoedas * ✅ **Bitcoin, Ethereum, etc.** * ✅ **Lista de moedas disponíveis** ### Indicadores Econômicos * ✅ **Inflação** - IPCA, IGP-M, etc. * ✅ **Taxa de juros** - SELIC, CDI * ✅ **Câmbio** - USD, EUR, etc. *** ## Tratamento de Erros Ambas as SDKs lançam exceções específicas por tipo de erro: ### TypeScript ```typescript import Brapi from 'brapi'; try { const quote = await client.quote.retrieve('INVALID'); } catch (error) { if (error instanceof Brapi.NotFoundError) { console.log('Ticker não encontrado'); } else if (error instanceof Brapi.RateLimitError) { console.log('Limite de requisições atingido'); } else if (error instanceof Brapi.AuthenticationError) { console.log('Token inválido'); } } ``` ### Python ```python from brapi import Brapi, NotFoundError, RateLimitError try: quote = client.quote.retrieve(tickers="INVALID") except NotFoundError: print("Ticker não encontrado") except RateLimitError: print("Limite de requisições atingido") ``` *** ## Configuração Avançada ### Retry Automático ```typescript // TypeScript const client = new Brapi({ apiKey: process.env.BRAPI_API_KEY, maxRetries: 3, // Tenta até 3 vezes }); ``` ```python # Python client = Brapi( api_key="seu_token", max_retries=3, # Tenta até 3 vezes ) ``` ### Timeouts ```typescript // TypeScript const client = new Brapi({ apiKey: process.env.BRAPI_API_KEY, timeout: 10000, // 10 segundos }); ``` ```python # Python client = Brapi( api_key="seu_token", timeout=10.0, # 10 segundos ) ``` *** ## Gerado com Stainless Nossas SDKs são geradas automaticamente usando [Stainless](https://www.stainless.com/), garantindo: * ✅ Sempre sincronizadas com a API * ✅ Tipos precisos e atualizados * ✅ Documentação inline * ✅ Padrões de indústria * ✅ Testes automáticos *** ## Começar a Usar Escolha a SDK da sua linguagem: ### TypeScript / JavaScript ```bash npm install brapi ``` **[📚 Ver Documentação Completa →](/docs/sdks/typescript)** **Links:** * 📦 [NPM Package](https://www.npmjs.com/package/brapi) * 🔧 [GitHub Repository](https://github.com/brapi-dev/brapi-typescript) *** ### Python ```bash pip install brapi ``` **[📚 Ver Documentação Completa →](/docs/sdks/python)** **Links:** * 📦 [PyPI Package](https://pypi.org/project/brapi/) * 🔧 [GitHub Repository](https://github.com/brapi-dev/brapi-python) *** ## Futuras SDKs Estamos trabalhando em SDKs para: * 🔜 **Go** - Em desenvolvimento * 🔜 **PHP** - Planejado * 🔜 **Java** - Planejado * 🔜 **Ruby** - Planejado Interessado em contribuir ou sugerir uma SDK? [Abra uma issue](https://github.com/brapi-dev) no GitHub! *** ## Suporte e Comunidade * 💬 [GitHub Discussions](https://github.com/brapi-dev) * 🐛 [Reportar Bug](https://github.com/brapi-dev) * 📧 [Email de Suporte](mailto:contato@brapi.dev) * 📚 [Documentação da API](/docs) *** ## Open Source Todas as nossas SDKs são **open source** e licenciadas sob MIT. Contribuições são muito bem-vindas! * ⭐ [Star no GitHub](https://github.com/brapi-dev) * 🤝 [Contribuir](https://github.com/brapi-dev) * 📖 [Changelog](https://github.com/brapi-dev) # SDK Python URL: /docs/sdks/python.mdx SDK oficial Python da brapi.dev. Biblioteca completa com type hints, suporte síncrono e assíncrono, integração com asyncio e aiohttp, tratamento de erros automático. *** title: 'SDK Python' description: >- SDK oficial Python da brapi.dev. Biblioteca completa com type hints, suporte síncrono e assíncrono, integração com asyncio e aiohttp, tratamento de erros automático. full: false keywords: brapi, sdk, python, pip, api client, asyncio, httpx openGraph: title: SDK Python - brapi.dev description: >- SDK oficial Python com type hints e suporte síncrono e assíncrono type: website locale: pt\_BR lastUpdated: '2025-10-12T20:00:00.000Z' lang: pt-BR ----------- SDK oficial da brapi.dev para Python 3.8+, oferecendo acesso conveniente à API REST com type hints completos e suporte síncrono e assíncrono. ## Características * ✅ **Type hints completos** - Autocomplete e validação no IDE * ✅ **Python 3.8+** - Compatível com versões modernas * ✅ **Sync e Async** - Cliente síncrono e assíncrono * ✅ **Powered by httpx** - HTTP/2 e connection pooling * ✅ **Suporte aiohttp** - Performance assíncrona otimizada * ✅ **Tratamento de erros** - Exceções tipadas e descritivas * ✅ **Retry automático** - Tratamento inteligente de falhas * ✅ **Gerado com Stainless** - Sempre atualizado com a API ## Instalação ```bash pip install brapi ``` Com suporte a aiohttp (opcional, para melhor performance async): ```bash pip install brapi[aiohttp] ```
## Início Rápido ### Cliente Síncrono ```python import os from brapi import Brapi client = Brapi( api_key=os.environ.get("BRAPI_API_KEY"), ) # Buscar cotação quote = client.quote.retrieve(tickers="PETR4") print(quote.results[0].regular_market_price) # Múltiplas ações quotes = client.quote.retrieve(tickers="PETR4,VALE3,ITUB4") for stock in quotes.results: print(f"{stock.symbol}: R$ {stock.regular_market_price}") ``` ### Cliente Assíncrono ```python import os import asyncio from brapi import AsyncBrapi client = AsyncBrapi( api_key=os.environ.get("BRAPI_API_KEY"), ) async def main(): quote = await client.quote.retrieve(tickers="PETR4") print(quote.results[0].regular_market_price) asyncio.run(main()) ``` ## Configuração ### Variáveis de Ambiente Recomendamos usar `python-dotenv` para gerenciar variáveis de ambiente: ```bash pip install python-dotenv ``` Crie um arquivo `.env`: ```bash BRAPI_API_KEY=seu_token_aqui ``` No seu código: ```python import os from dotenv import load_dotenv from brapi import Brapi load_dotenv() client = Brapi( api_key=os.environ.get("BRAPI_API_KEY"), ) ``` ### Opções do Cliente ```python client = Brapi( api_key="seu_token", environment="production", # 'production' ou 'sandbox' max_retries=2, # Número de tentativas (padrão: 2) timeout=60.0, # Timeout em segundos (padrão: 60) ) ``` ## Exemplos de Uso ### Cotações ```python # Cotação única quote = client.quote.retrieve(tickers="PETR4") stock = quote.results[0] print(f"Símbolo: {stock.symbol}") print(f"Nome: {stock.short_name}") print(f"Preço: R$ {stock.regular_market_price}") print(f"Variação: {stock.regular_market_change_percent}%") # Com módulos adicionais quote_with_data = client.quote.retrieve( tickers="PETR4", modules="summaryProfile,balanceSheetHistory" ) ``` ### Lista de Ações ```python # Todas as ações disponíveis stocks = client.quote.list() for stock in stocks.stocks: print(f"{stock.stock}: {stock.name} ({stock.type})") # Com paginação stocks_page = client.quote.list(page=1, limit=50) ``` ### Criptomoedas ```python # Cotação de cripto crypto = client.crypto.retrieve(coin="BTC") print(f"Bitcoin: ${crypto.currency}") # Lista de criptos disponíveis cryptos = client.crypto.available() for coin in cryptos.coins: print(f"{coin.coin}: {coin.name}") ``` ### Moedas ```python # Cotação de moeda currency = client.currency.retrieve(currency="USD-BRL") print(f"Dólar: R$ {currency.ask}") # Lista de moedas disponíveis currencies = client.currency.available() ``` ### Inflação ```python # Dados de inflação do Brasil inflation = client.inflation.retrieve(country="brazil") print(f"IPCA: {inflation.IPCA}") # Países disponíveis countries = client.inflation.available() ``` ### Taxa de Juros ```python # Taxa SELIC selic = client.prime_rate.retrieve(country="brazil") print(f"SELIC: {selic.value}%") # Países disponíveis countries = client.prime_rate.available() ``` ## Cliente Assíncrono ### Com httpx (padrão) ```python import asyncio from brapi import AsyncBrapi async def main(): client = AsyncBrapi(api_key="seu_token") # Todas as operações usam await quote = await client.quote.retrieve(tickers="PETR4") print(quote.results[0].regular_market_price) # Não esqueça de fechar o cliente await client.close() asyncio.run(main()) ``` ### Com Context Manager ```python import asyncio from brapi import AsyncBrapi async def main(): async with AsyncBrapi(api_key="seu_token") as client: quote = await client.quote.retrieve(tickers="PETR4") print(quote.results[0].regular_market_price) # Cliente fechado automaticamente asyncio.run(main()) ``` ### Com aiohttp (melhor performance) ```python import asyncio from brapi import AsyncBrapi, DefaultAioHttpClient async def main(): async with AsyncBrapi( api_key="seu_token", http_client=DefaultAioHttpClient(), ) as client: quote = await client.quote.retrieve(tickers="PETR4") print(quote.results[0].regular_market_price) asyncio.run(main()) ``` ### Requisições Concorrentes ```python import asyncio from brapi import AsyncBrapi async def get_multiple_quotes(): async with AsyncBrapi(api_key="seu_token") as client: # Buscar várias cotações em paralelo tasks = [ client.quote.retrieve(tickers="PETR4"), client.quote.retrieve(tickers="VALE3"), client.quote.retrieve(tickers="ITUB4"), ] results = await asyncio.gather(*tasks) for quote in results: stock = quote.results[0] print(f"{stock.symbol}: R$ {stock.regular_market_price}") asyncio.run(get_multiple_quotes()) ``` ## Tratamento de Erros ```python from brapi import Brapi from brapi import ( APIError, BadRequestError, AuthenticationError, NotFoundError, RateLimitError, ) client = Brapi(api_key="seu_token") try: quote = client.quote.retrieve(tickers="INVALID") except NotFoundError as e: print(f"Ticker não encontrado: {e}") except RateLimitError as e: print(f"Limite de requisições: {e}") except AuthenticationError as e: print(f"Token inválido: {e}") except APIError as e: print(f"Erro na API: {e}") ``` ### Tipos de Exceção | Exception | Status | Descrição | | -------------------------- | ------ | ---------------------- | | `BadRequestError` | 400 | Requisição inválida | | `AuthenticationError` | 401 | Token inválido | | `PermissionDeniedError` | 403 | Sem permissão | | `NotFoundError` | 404 | Recurso não encontrado | | `UnprocessableEntityError` | 422 | Dados inválidos | | `RateLimitError` | 429 | Limite de requisições | | `InternalServerError` | 5xx | Erro no servidor | | `APIConnectionError` | N/A | Erro de conexão | ## Integração com Flask ```python from flask import Flask, jsonify from brapi import Brapi app = Flask(__name__) client = Brapi(api_key="seu_token") @app.route('/api/quote/
') def get_quote(ticker): try: quote = client.quote.retrieve(tickers=ticker) return jsonify({ 'symbol': quote.results[0].symbol, 'price': quote.results[0].regular_market_price, }) except NotFoundError: return jsonify({'error': 'Ticker not found'}), 404 if __name__ == '__main__': app.run() ``` ## Integração com FastAPI ```python from fastapi import FastAPI, HTTPException from brapi import AsyncBrapi, NotFoundError app = FastAPI() client = AsyncBrapi(api_key="seu_token") @app.get("/api/quote/{ticker}") async def get_quote(ticker: str): try: quote = await client.quote.retrieve(tickers=ticker) return { 'symbol': quote.results[0].symbol, 'price': quote.results[0].regular_market_price, } except NotFoundError: raise HTTPException(status_code=404, detail="Ticker not found") @app.on_event("shutdown") async def shutdown(): await client.close() ``` ## Integração com Pandas ```python import pandas as pd from brapi import Brapi client = Brapi(api_key="seu_token") def get_quotes_dataframe(tickers: list[str]) -> pd.DataFrame: """Retorna cotações como DataFrame""" tickers_str = ','.join(tickers) quote = client.quote.retrieve(tickers=tickers_str) data = [] for stock in quote.results: data.append({ 'symbol': stock.symbol, 'name': stock.short_name, 'price': stock.regular_market_price, 'change_percent': stock.regular_market_change_percent, }) return pd.DataFrame(data) # Uso df = get_quotes_dataframe(['PETR4', 'VALE3', 'ITUB4']) print(df) # Salvar em Excel df.to_excel('cotacoes.xlsx', index=False) ``` ## Timeouts ```python # Timeout global client = Brapi( api_key="seu_token", timeout=10.0, # 10 segundos ) # Timeout por requisição quote = client.quote.retrieve( tickers="PETR4", timeout=5.0, # 5 segundos ) ``` ## Retry Automático ```python # Configurar retries client = Brapi( api_key="seu_token", max_retries=3, # Tenta até 3 vezes ) # Desabilitar retries client = Brapi( api_key="seu_token", max_retries=0, # Sem retry ) ``` ## Type Hints A SDK inclui type hints completos para todas as operações: ```python from brapi import Brapi from brapi.types import QuoteRetrieveResponse client: Brapi = Brapi(api_key="seu_token") # Type checking automático quote: QuoteRetrieveResponse = client.quote.retrieve(tickers="PETR4") # Autocomplete no IDE price: float = quote.results[0].regular_market_price ``` ## Boas Práticas ### 1. Reutilize o Cliente ```python # ✅ Bom - Crie uma instância e reutilize from brapi import Brapi client = Brapi(api_key="seu_token") def get_quote(ticker): return client.quote.retrieve(tickers=ticker) # ❌ Ruim - Criar nova instância a cada uso def get_quote(ticker): client = Brapi(api_key="seu_token") # Não faça isso return client.quote.retrieve(tickers=ticker) ``` ### 2. Use Variáveis de Ambiente ```python # ✅ Bom import os from brapi import Brapi client = Brapi(api_key=os.environ.get("BRAPI_API_KEY")) # ❌ Ruim - Nunca hardcode o token client = Brapi(api_key="meu-token-secreto") # Não faça isso! ``` ### 3. Use Context Manager com Async ```python # ✅ Bom async with AsyncBrapi(api_key="seu_token") as client: quote = await client.quote.retrieve(tickers="PETR4") # Cliente fechado automaticamente # ❌ Ruim client = AsyncBrapi(api_key="seu_token") quote = await client.quote.retrieve(tickers="PETR4") # Esqueceu de fechar! ``` ## Links Úteis * 📦 [Pacote PyPI](https://pypi.org/project/brapi/) * 🔧 [Repositório GitHub](https://github.com/brapi-dev/brapi-python) * 📚 [Documentação Completa da API](/docs) * 🐛 [Reportar Bug](https://github.com/brapi-dev/brapi-python/issues) ## Suporte Precisa de ajuda? Entre em contato: * 💬 [Abra uma issue](https://github.com/brapi-dev/brapi-python/issues) * 📧 [Suporte por email](mailto:contato@brapi.dev) * 📖 [Documentação completa](/docs) ## Contribuindo Contribuições são bem-vindas! Veja o [guia de contribuição](https://github.com/brapi-dev/brapi-python/blob/main/CONTRIBUTING.md). ## Licença MIT License - veja [LICENSE](https://github.com/brapi-dev/brapi-python/blob/main/LICENSE) para detalhes. # SDK TypeScript/JavaScript URL: /docs/sdks/typescript.mdx SDK oficial TypeScript/JavaScript da brapi.dev. Biblioteca completa com tipos TypeScript, suporte a Node.js e navegador, tratamento de erros automático e retry inteligente. *** title: 'SDK TypeScript/JavaScript' description: >- SDK oficial TypeScript/JavaScript da brapi.dev. Biblioteca completa com tipos TypeScript, suporte a Node.js e navegador, tratamento de erros automático e retry inteligente. full: false keywords: brapi, sdk, typescript, javascript, npm, api client, node.js openGraph: title: SDK TypeScript/JavaScript - brapi.dev description: >- SDK oficial TypeScript/JavaScript com tipos completos e suporte a async/await type: website locale: pt\_BR lastUpdated: '2025-10-12T20:00:00.000Z' lang: pt-BR ----------- SDK oficial da brapi.dev para TypeScript e JavaScript, oferecendo acesso conveniente à API REST com tipos completos e suporte a async/await. ## Características * ✅ **Tipos TypeScript completos** - IntelliSense e autocomplete * ✅ **Suporte a Node.js e Browser** - Funciona em qualquer ambiente * ✅ **Async/Await nativo** - API moderna e fácil de usar * ✅ **Retry automático** - Tratamento inteligente de falhas * ✅ **Tratamento de erros** - Erros tipados e descritivos * ✅ **Tree-shakeable** - Bundle otimizado * ✅ **Gerado com Stainless** - Sempre atualizado com a API ## Instalação ```bash npm install brapi # ou yarn add brapi # ou pnpm add brapi # ou bun add brapi ``` ## Início Rápido ### JavaScript ```javascript import Brapi from 'brapi'; const client = new Brapi({ apiKey: process.env.BRAPI_API_KEY, }); // Buscar cotação de uma ação const quote = await client.quote.retrieve('PETR4'); console.log(quote.results[0].regularMarketPrice); // Buscar múltiplas ações const quotes = await client.quote.retrieve('PETR4,VALE3,ITUB4'); console.log(quotes.results); ``` ### TypeScript ```typescript import Brapi from 'brapi'; const client = new Brapi({ apiKey: process.env.BRAPI_API_KEY, }); // Tipos automáticos! const quote: Brapi.QuoteRetrieveResponse = await client.quote.retrieve('PETR4'); // IntelliSense completo const price = quote.results[0].regularMarketPrice; const change = quote.results[0].regularMarketChangePercent; ``` ## Configuração ### Variáveis de Ambiente Crie um arquivo `.env`: ```bash BRAPI_API_KEY=seu_token_aqui ``` ### Opções do Cliente ```typescript const client = new Brapi({ apiKey: process.env.BRAPI_API_KEY, // Obrigatório environment: 'production', // 'production' ou 'sandbox' maxRetries: 2, // Número de tentativas (padrão: 2) timeout: 60000, // Timeout em ms (padrão: 60000) }); ``` ## Exemplos de Uso ### Cotações ```typescript // Cotação única const quote = await client.quote.retrieve('PETR4'); // Múltiplas cotações const quotes = await client.quote.retrieve('PETR4,VALE3,ITUB4'); // Com parâmetros adicionais const quoteWithModules = await client.quote.retrieve('PETR4', { modules: 'summaryProfile,balanceSheetHistory', }); // Resultado console.log(quote.results[0]); // { // symbol: 'PETR4', // shortName: 'PETROBRAS PN', // regularMarketPrice: 38.45, // regularMarketChangePercent: 2.15, // currency: 'BRL', // ... // } ``` ### Lista de Ações ```typescript // Listar todas as ações disponíveis const stocks = await client.quote.list(); // Com paginação const stocksPage = await client.quote.list({ page: 1, limit: 50, }); console.log(stocks.stocks); // [ // { stock: 'PETR4', name: 'Petrobras PN', type: 'stock' }, // { stock: 'VALE3', name: 'Vale ON', type: 'stock' }, // ... // ] ``` ### Criptomoedas ```typescript // Cotação de cripto const crypto = await client.crypto.retrieve('BTC'); // Lista de criptos disponíveis const cryptos = await client.crypto.available(); ``` ### Moedas ```typescript // Cotação de moeda const currency = await client.currency.retrieve('USD-BRL'); // Lista de moedas disponíveis const currencies = await client.currency.available(); ``` ### Inflação ```typescript // Dados de inflação const inflation = await client.inflation.retrieve('IPCA'); // Países disponíveis const countries = await client.inflation.available(); ``` ### Taxa de Juros ```typescript // Taxa SELIC const selic = await client.primeRate.retrieve('SELIC'); // Países disponíveis const countries = await client.primeRate.available(); ``` ## Tratamento de Erros A SDK lança erros tipados para facilitar o tratamento: ```typescript try { const quote = await client.quote.retrieve('INVALID'); } catch (error) { if (error instanceof Brapi.APIError) { console.log(error.status); // Código HTTP (ex: 404) console.log(error.name); // Nome do erro (ex: 'NotFoundError') console.log(error.message); // Mensagem descritiva console.log(error.headers); // Headers da resposta } } ``` ### Tipos de Erro | Status Code | Error Type | Descrição | | ----------- | -------------------------- | ---------------------- | | 400 | `BadRequestError` | Requisição inválida | | 401 | `AuthenticationError` | Token inválido | | 403 | `PermissionDeniedError` | Sem permissão | | 404 | `NotFoundError` | Recurso não encontrado | | 422 | `UnprocessableEntityError` | Dados inválidos | | 429 | `RateLimitError` | Limite de requisições | | >=500 | `InternalServerError` | Erro no servidor | | N/A | `APIConnectionError` | Erro de conexão | ## Retry Automático A SDK tenta automaticamente 2 vezes em caso de falha: ```typescript // Configurar retries const client = new Brapi({ apiKey: process.env.BRAPI_API_KEY, maxRetries: 3, // Tenta até 3 vezes }); // Desabilitar retries const client = new Brapi({ apiKey: process.env.BRAPI_API_KEY, maxRetries: 0, // Sem retry }); ``` Erros automaticamente retriados: * Erros de conexão * 408 Request Timeout * 409 Conflict * 429 Rate Limit * Erros 5xx (servidor) ## Uso em Next.js ### Server Component ```typescript // app/stock/[ticker]/page.tsx import Brapi from 'brapi'; const client = new Brapi({ apiKey: process.env.BRAPI_API_KEY, }); export default async function StockPage({ params, }: { params: { ticker: string }; }) { const quote = await client.quote.retrieve(params.ticker); const stock = quote.results[0]; return ( ); } ``` ### API Route ```typescript // app/api/quote/[ticker]/route.ts import { NextResponse } from 'next/server'; import Brapi from 'brapi'; const client = new Brapi({ apiKey: process.env.BRAPI_API_KEY, }); export async function GET( request: Request, { params }: { params: { ticker: string } } ) { try { const quote = await client.quote.retrieve(params.ticker); return NextResponse.json(quote); } catch (error) { if (error instanceof Brapi.NotFoundError) { return NextResponse.json( { error: 'Ticker not found' }, { status: 404 } ); } throw error; } } ``` ### Client Component com SWR ```typescript 'use client'; import useSWR from 'swr'; const fetcher = (url: string) => fetch(url).then(r => r.json()); export function StockQuote({ ticker }: { ticker: string }) { const { data, error } = useSWR(`/api/quote/${ticker}`, fetcher); if (error) return{stock.shortName}
R$ {stock.regularMarketPrice.toFixed(2)}
Erro ao carregar; if (!data) returnCarregando...; const stock = data.results[0]; return{stock.symbol}: R$ {stock.regularMarketPrice}; } ``` ## Uso com Express ```typescript import express from 'express'; import Brapi from 'brapi'; const app = express(); const client = new Brapi({ apiKey: process.env.BRAPI_API_KEY, }); app.get('/api/quote/:ticker', async (req, res) => { try { const quote = await client.quote.retrieve(req.params.ticker); res.json(quote); } catch (error) { if (error instanceof Brapi.NotFoundError) { res.status(404).json({ error: 'Ticker not found' }); } else { res.status(500).json({ error: 'Internal server error' }); } } }); app.listen(3000); ``` ## Timeouts ```typescript // Timeout global const client = new Brapi({ apiKey: process.env.BRAPI_API_KEY, timeout: 10000, // 10 segundos }); // Timeout por requisição const quote = await client.quote.retrieve('PETR4', { timeout: 5000, // 5 segundos }); ``` ## Tipos Disponíveis A SDK exporta todos os tipos necessários: ```typescript import type { QuoteRetrieveResponse, QuoteListResponse, CryptoRetrieveResponse, CurrencyRetrieveResponse, InflationRetrieveResponse, } from 'brapi'; ``` ## Boas Práticas ### 1. Reutilize a Instância do Cliente ```typescript // ✅ Bom - Crie uma instância e reutilize export const brapiClient = new Brapi({ apiKey: process.env.BRAPI_API_KEY, }); // ❌ Ruim - Criar nova instância a cada uso function getQuote() { const client = new Brapi({ apiKey: '...' }); // Não faça isso } ``` ### 2. Use Variáveis de Ambiente ```typescript // ✅ Bom const client = new Brapi({ apiKey: process.env.BRAPI_API_KEY, }); // ❌ Ruim - Nunca hardcode o token const client = new Brapi({ apiKey: 'meu-token-secreto', // Não faça isso! }); ``` ### 3. Trate Erros Adequadamente ```typescript // ✅ Bom try { const quote = await client.quote.retrieve('PETR4'); } catch (error) { if (error instanceof Brapi.RateLimitError) { // Trate limite de requisições } else if (error instanceof Brapi.NotFoundError) { // Trate ticker não encontrado } } ``` ## Links Úteis * 📦 [Pacote NPM](https://www.npmjs.com/package/brapi) * 🔧 [Repositório GitHub](https://github.com/brapi-dev/brapi-typescript) * 📚 [Documentação Completa da API](/docs) * 🐛 [Reportar Bug](https://github.com/brapi-dev/brapi-typescript/issues) ## Suporte Precisa de ajuda? Entre em contato: * 💬 [Abra uma issue](https://github.com/brapi-dev/brapi-typescript/issues) * 📧 [Suporte por email](mailto:contato@brapi.dev) * 📖 [Documentação completa](/docs) ## Contribuindo Contribuições são bem-vindas! Veja o [guia de contribuição](https://github.com/brapi-dev/brapi-typescript/blob/main/CONTRIBUTING.md). ## Licença MIT License - veja [LICENSE](https://github.com/brapi-dev/brapi-typescript/blob/main/LICENSE) para detalhes. # Taxa Básica de Juros - Países Disponíveis URL: /docs/taxa-basica-de-juros/available.mdx Endpoint para listar todos os países com dados de Taxa Básica de Juros (SELIC) disponíveis na API. Permite a filtragem de países por nome, facilitando a implementação de recursos de autocomplete em interfaces. *** title: Taxa Básica de Juros - Países Disponíveis description: >- Endpoint para listar todos os países com dados de Taxa Básica de Juros (SELIC) disponíveis na API. Permite a filtragem de países por nome, facilitando a implementação de recursos de autocomplete em interfaces. full: true keywords: brapi, api, documentação, taxa de juros, selic, prime rate, países openGraph: title: Taxa Básica de Juros - Países Disponíveis description: >- Endpoint para listar todos os países com dados de Taxa Básica de Juros (SELIC) disponíveis na API. Permite a filtragem de países por nome, facilitando a implementação de recursos de autocomplete em interfaces. type: website locale: pt\_BR lastUpdated: '2025-04-29T10:30:45.123Z' lang: pt-BR \_openapi: method: GET route: /api/v2/prime-rate/available toc: * depth: 2 title: Listar Todos Os Possíveis Países com Taxa Básica de Juros (SELIC) Suportados url: '#listar-todos-os-possíveis-países-com-taxa-básica-de-juros-selic-suportados' structuredData: headings: * content: Listar Todos Os Possíveis Países com Taxa Básica de Juros (SELIC) Suportados id: listar-todos-os-possíveis-países-com-taxa-básica-de-juros-selic-suportados contents: * content: >- Liste todos os países disponíveis com dados de taxa básica de juros (SELIC) na API brapi. Este endpoint facilita a descoberta de quais países possuem dados disponíveis para consulta através do endpoint principal `/api/v2/prime-rate`. ### Funcionalidades: * **Busca Filtrada:** Utilize o parâmetro `search` para filtrar países por nome ou parte do nome. * **Ideal para Autocomplete:** Perfeito para implementar campos de busca com autocompletar em interfaces de usuário. ### Autenticação: Requer token de autenticação via `token` (query) ou `Authorization` (header). ### Exemplo de Requisição: **Listar países que contenham "BR" no nome:** ```bash curl -X GET "https://brapi.dev/api/v2/prime-rate/available?search=BR&token=SEU_TOKEN" ``` **Listar todos os países disponíveis:** ```bash curl -X GET "https://brapi.dev/api/v2/prime-rate/available?token=SEU_TOKEN" ``` ### Resposta: A resposta contém um array `countries` com a lista de países disponíveis para consulta de taxas básicas de juros (ex: `["brazil", "united states", "european union"]`). heading: listar-todos-os-possíveis-países-com-taxa-básica-de-juros-selic-suportados *** Endpoint para listar todos os **países com dados de Taxa Básica de Juros (SELIC)** disponíveis na API. Facilita a descoberta de quais países possuem dados disponíveis e permite a implementação de recursos de busca e autocomplete em interfaces de usuário. ## Swagger Documentation # Brapi - API do Mercado Financeiro Brasileiro - /api/v2/prime-rate/available Single endpoint documentation for /api/v2/prime-rate/available ## Base URLs - `https://brapi.dev` - Servidor principal da API Brapi - `http://localhost:3000` - Servidor local para desenvolvimento ## GET /api/v2/prime-rate/available **Summary:** Listar Todos Os Possíveis Países com Taxa Básica de Juros (SELIC) Suportados Liste todos os países disponíveis com dados de taxa básica de juros (SELIC) na API brapi. Este endpoint facilita a descoberta de quais países possuem dados disponíveis para consulta através do endpoint principal `/api/v2/prime-rate`. ### Funcionalidades: * **Busca Filtrada:** Utilize o parâmetro `search` para filtrar países por nome ou parte do nome. * **Ideal para Autocomplete:** Perfeito para implementar campos de busca com autocompletar em interfaces de usuário. ### Autenticação: Requer token de autenticação via `token` (query) ou `Authorization` (header). ### Exemplo de Requisição: **Listar países que contenham "BR" no nome:** ```bash curl -X GET "https://brapi.dev/api/v2/prime-rate/available?search=BR&token=SEU_TOKEN" ``` **Tags:** Taxa de Juros ### Parameters - **search** (query): **Opcional.** Termo para filtrar a lista de países por nome. Retorna países cujos nomes contenham o termo especificado (case insensitive). - **undefined** (undefined) ### Responses #### 200 **Sucesso.** Retorna a lista de países com dados de taxa básica de juros disponíveis, possivelmente filtrada pelo termo de busca. #### 401 #### 404 **Not Found.** Não foi encontrado nenhum país correspondente ao termo de busca fornecido. **Example Response:** ```json { "message": "Country not found" } ``` ## Schemas The following schemas are used by this endpoint: ### ErrorResponse Schema padrão para respostas de erro da API. **Properties:** - **error** (boolean) *(required)* Indica se a requisição resultou em erro. Sempre `true` para este schema. - **message** (string) *(required)* Mensagem descritiva do erro ocorrido. ### PrimeRateAvailableResponse Resposta do endpoint `/api/v2/prime-rate/available` que lista os países disponíveis para consulta de taxa básica de juros (SELIC). **Properties:** - **countries** (array) Lista de países com dados de taxa básica de juros (SELIC) disponíveis para consulta. Array items: **Type:** string # Taxa Básica de Juros URL: /docs/taxa-basica-de-juros.mdx Endpoints para consulta de Taxas Básicas de Juros (SELIC) de diferentes países. Permite a obtenção de taxas atuais e séries históricas das taxas básicas de juros, com personalização por país, período e opções de ordenação. *** title: Taxa Básica de Juros description: >- Endpoints para consulta de Taxas Básicas de Juros (SELIC) de diferentes países. Permite a obtenção de taxas atuais e séries históricas das taxas básicas de juros, com personalização por país, período e opções de ordenação. full: true keywords: brapi, api, documentação, taxa de juros, selic, prime rate openGraph: title: Taxa Básica de Juros description: >- Endpoints para consulta de Taxas Básicas de Juros (SELIC) de diferentes países. Permite a obtenção de taxas atuais e séries históricas das taxas básicas de juros, com personalização por país, período e opções de ordenação. type: website locale: pt\_BR lastUpdated: '2025-04-29T10:30:45.123Z' lang: pt-BR \_openapi: method: GET route: /api/v2/prime-rate toc: * depth: 2 title: Buscar Taxa Básica de Juros (SELIC) de um País por um Período Determinado url: '#buscar-taxa-básica-de-juros-selic-de-um-país-por-um-período-determinado' structuredData: headings: * content: Buscar Taxa Básica de Juros (SELIC) de um País por um Período Determinado id: buscar-taxa-básica-de-juros-selic-de-um-país-por-um-período-determinado contents: * content: >- Obtenha informações atualizadas sobre a taxa básica de juros (SELIC) de um país por um período determinado. ### Funcionalidades: * **Seleção por País:** Especifique o país desejado usando o parâmetro `country` (padrão: brazil). * **Período Customizado:** Defina datas de início e fim com `start` e `end` para consultar um intervalo específico. * **Ordenação:** Ordene os resultados por data ou valor com os parâmetros `sortBy` e `sortOrder`. * **Dados Históricos:** Solicite o histórico completo ou apenas o valor mais recente com o parâmetro `historical`. ### Autenticação: Requer token de autenticação via `token` (query) ou `Authorization` (header). ### Exemplo de Requisição: **Taxa de juros do Brasil entre dezembro/2021 e janeiro/2022:** ```bash curl -X GET "https://brapi.dev/api/v2/prime-rate?country=brazil&start=01/12/2021&end=01/01/2022&sortBy=date&sortOrder=desc&token=SEU_TOKEN" ``` **Buscar a taxa básica de juros atual do Brasil:** ```bash curl -X GET "https://brapi.dev/api/v2/prime-rate?country=brazil&token=SEU_TOKEN" ``` ### Resposta: A resposta contém um array `prime-rate`, onde cada objeto representa um ponto de dado da taxa básica de juros com sua `date` (DD/MM/YYYY), `value` (o valor da taxa como string) e `epochDate` (timestamp em milissegundos). heading: buscar-taxa-básica-de-juros-selic-de-um-país-por-um-período-determinado *** Endpoints para consulta de **Taxas Básicas de Juros (SELIC)** de diferentes países. Permite a obtenção de taxas atuais e séries históricas das taxas básicas de juros, com personalização por país, período e opções de ordenação. ## Swagger Documentation # Brapi - API do Mercado Financeiro Brasileiro - /api/v2/prime-rate Single endpoint documentation for /api/v2/prime-rate ## Base URLs - `https://brapi.dev` - Servidor principal da API Brapi - `http://localhost:3000` - Servidor local para desenvolvimento ## GET /api/v2/prime-rate **Summary:** Buscar Taxa Básica de Juros (SELIC) de um País por um Período Determinado Obtenha informações atualizadas sobre a taxa básica de juros (SELIC) de um país por um período determinado. ### Funcionalidades: * **Seleção por País:** Especifique o país desejado usando o parâmetro `country` (padrão: brazil). * **Período Customizado:** Defina datas de início e fim com `start` e `end` para consultar um intervalo específico. * **Ordenação:** Ordene os resultados por data ou valor com os parâmetros `sortBy` e `sortOrder`. * **Dados Históricos:** Solicite o histórico completo ou apenas o valor mais recente com o parâmetro `historical`. ### Autenticação: Requer token de autenticação via `token` (query) ou `Authorization` (header). ### Exemplo de Requisição: **Taxa de juros do Brasil entre dezembro/2021 e janeiro/2022:** ```bash curl -X GET "https://brapi.dev/api/v2/prime-rate?country=brazil&start=01/12/2021&end=01/01/2022&sortBy=date&sortOrder=desc&token=SEU_TOKEN" ``` **Tags:** Taxa de Juros ### Parameters - **country** (query): **Opcional.** O país do qual você deseja obter informações sobre a taxa básica de juros. Por padrão, o país é definido como brazil. Você pode consultar a lista de países disponíveis através do endpoint `/api/v2/prime-rate/available`. - **historical** (query): **Opcional.** Define se os dados históricos serão retornados. Se definido como `true`, retorna a série histórica completa. Se `false` (padrão) ou omitido, retorna apenas o valor mais recente. - **start** (query): **Opcional.** Data inicial do período para busca no formato DD/MM/YYYY. Útil quando `historical=true` para restringir o período da série histórica. - **end** (query): **Opcional.** Data final do período para busca no formato DD/MM/YYYY. Por padrão é a data atual. Útil quando `historical=true` para restringir o período da série histórica. - **sortBy** (query): **Opcional.** Campo pelo qual os resultados serão ordenados. Por padrão, ordena por `date` (data). - **sortOrder** (query): **Opcional.** Define se a ordenação será crescente (`asc`) ou decrescente (`desc`). Por padrão, é `desc` (decrescente). - **undefined** (undefined) ### Responses #### 200 **Sucesso.** Retorna os dados da taxa básica de juros (SELIC) conforme os parâmetros fornecidos. #### 400 **Bad Request.** A requisição está malformada ou um dos parâmetros fornecidos é inválido. **Example Response:** ```json { "error": true, "message": "Something went wrong while fetching the data" } ``` #### 401 #### 417 **Expectation Failed.** Um valor de parâmetro fornecido é inválido ou não está disponível. **Example Response:** ```json { "error": true, "message": "this query value is not available, please use one of the following: asc,desc" } ``` ## Schemas The following schemas are used by this endpoint: ### ErrorResponse Schema padrão para respostas de erro da API. **Properties:** - **error** (boolean) *(required)* Indica se a requisição resultou em erro. Sempre `true` para este schema. - **message** (string) *(required)* Mensagem descritiva do erro ocorrido. ### PrimeRateEntry Representa um registro individual de taxa básica de juros (SELIC) para uma data específica. **Properties:** - **date** (string) Data do registro no formato DD/MM/YYYY. - **value** (string) Valor da taxa básica de juros (SELIC) para a data correspondente. - **epochDate** (integer, int64) Timestamp em milissegundos (formato epoch) correspondente à data do registro. ### PrimeRateResponse Resposta principal do endpoint `/api/v2/prime-rate`. **Properties:** - **prime-rate** (array) Array contendo os registros históricos de taxa básica de juros (SELIC) para o país e período solicitados. Array items: Reference to: **PrimeRateEntry** # Acesso Gratuito e Ilimitado a Ações Brasileiras: Teste a brapi sem Limitações URL: /blog/acesso-gratuito-ilimitado-acoes-teste-brapi.mdx Agora você pode acessar dados completos de PETR4, MGLU3, VALE3 e ITUB4 gratuitamente e sem limitações! Desenvolva e teste sua aplicação antes mesmo de assinar um plano, com acesso total a módulos avançados, histórico completo e dados em tempo real. *** searchable: false title: 'Acesso Gratuito e Ilimitado a Ações Brasileiras: Teste a brapi sem Limitações' description: 'Agora você pode acessar dados completos de PETR4, MGLU3, VALE3 e ITUB4 gratuitamente e sem limitações! Desenvolva e teste sua aplicação antes mesmo de assinar um plano, com acesso total a módulos avançados, histórico completo e dados em tempo real.' date: '2025-08-19' keywords: 'API gratuita Brasil, dados ações gratuitos, PETR4 MGLU3 VALE3 ITUB4, teste API brapi, desenvolvimento apps financeiros, dados bolsa gratuitos' author: 'Equipe brapi.dev' category: 'API e Desenvolvimento' subcategory: 'Acesso Gratuito' readingTime: '8 min' tags: \['API Gratuita', 'Desenvolvimento', 'PETR4', 'MGLU3', 'VALE3', 'ITUB4', 'Teste', 'Dados Financeiros'] relatedPosts: \['como-usar-api-brapi-analise-acoes-guia-completo-desenvolvedores', 'como-a-brapi-pode-facilitar-suas-analises-financeiras', 'como-acompanhar-a-bolsa-de-valores-em-tempo-real'] featured: false expertise: 'Equipe técnica da brapi.dev especializada em APIs financeiras e democratização de dados' lastReviewed: '2025-08-19' -------------------------- import { Author, Authors } from '~/components/Authors'; # Acesso Gratuito e Ilimitado a Ações Brasileiras: Teste a brapi sem Limitações > Imagina poder testar todos os recursos da brapi, incluindo dados fundamentalistas > e histórico completo, sem precisar de token ou limitações? Agora isso é realidade! > Liberamos acesso total a quatro das principais ações brasileiras para que você > possa desenvolver e validar sua aplicação antes mesmo de assinar qualquer plano.## A revolução chegou: teste antes de pagar Como desenvolvedor, você já passou por aquela situação frustrante de precisar assinar um serviço para descobrir se ele realmente atende suas necessidades? Ou de ficar limitado a dados básicos que não mostram o verdadeiro potencial de uma API? Pensando exatamente nisso, implementei uma mudança que vai transformar completamente como você experimenta a brapi. ## Quatro ações, acesso total, zero limitações A partir de hoje, você tem acesso **completamente irrestrito** a quatro das principais ações do mercado brasileiro: * **PETR4** (Petrobras PN) - O gigante do petróleo brasileiro * **MGLU3** (Magazine Luiza ON) - Líder do varejo digital * **VALE3** (Vale ON) - A maior mineradora das Américas * **ITUB4** (Itaú Unibanco PN) - O maior banco privado do país ### O que isso significa na prática? ```bash # Sim, isso funciona SEM token! curl "https://brapi.dev/api/quote/PETR4" # Histórico completo? Sem problemas! curl "https://brapi.dev/api/quote/VALE3?range=2y&interval=1d" # Todos os módulos avançados? Pode usar! curl "https://brapi.dev/api/quote/PETR4,MGLU3,VALE3,ITUB4?modules=summaryProfile,balanceSheetHistory,defaultKeyStatistics÷nds=true" ``` ## Vantagens que fazem a diferença ### 🚀 **Desenvolvimento sem barreiras** Você pode construir sua aplicação completa usando essas ações como base, testando todos os endpoints e funcionalidades antes de decidir por um plano pago. ### 📊 **Validação real dos dados** Acesse dados fundamentalistas reais, histórico de dividendos, balanços patrimoniais e todos os indicadores financeiros. Você vê exatamente a qualidade e estrutura dos dados que terá no plano pago. ### ⚡ **Performance em produção** Os dados dessas ações são atualizados com a mesma frequência dos planos pagos (5 minutos), então você testa a API em condições reais de uso. ### 🛠️ **Prototipagem rápida** Perfeito para hackathons, MVPs, provas de conceito e demonstrações. Você mostra o valor real da sua ideia com dados de qualidade. ## Como funciona a integração ### Acesso simples e direto ```javascript // Sem necessidade de token para as ações de teste const response = await fetch('https://brapi.dev/api/quote/PETR4,MGLU3'); const data = await response.json(); console.log(data.results); // Dados completos das duas ações ``` ### Recursos avançados inclusos ```bash # Balanço patrimonial dos últimos anos curl "https://brapi.dev/api/quote/VALE3?modules=balanceSheetHistory" # Indicadores fundamentalistas completos curl "https://brapi.dev/api/quote/ITUB4?modules=defaultKeyStatistics" # Histórico de dividendos curl "https://brapi.dev/api/quote/PETR4?dividends=true" ``` ### Integração inteligente O sistema é inteligente: se você consultar **apenas** as ações de teste, não precisa de autenticação. Mas se misturar com outras ações, o token continua obrigatório: ```bash # ✅ Funciona sem token (só ações de teste) curl "https://brapi.dev/api/quote/PETR4,VALE3" # ❌ Precisa de token (mistura teste + outras) curl "https://brapi.dev/api/quote/PETR4,BBAS3" # Requer Authorization header ``` ## Por que essas ações específicas? Escolhi essas quatro empresas estrategicamente: * **Setores diversificados**: Petróleo, varejo, mineração e bancos * **Liquidez alta**: São algumas das ações mais negociadas da B3 * **Dados ricos**: Possuem histórico extenso e fundamentais robustos * **Relevância**: Representam bem o mercado brasileiro ## Cases de uso perfeitos ### **Fintech em desenvolvimento** Teste sua lógica de análise fundamentalista com dados reais antes de investir em uma API paga. ### **Dashboard de investimentos** Construa a interface e funcionalidades usando essas ações como exemplo, depois escale para o portfólio completo. ### **Bot de trading** Valide suas estratégias e algoritmos com dados históricos reais e atualizações em tempo real. ### **Aplicativo educacional** Ensine conceitos de investimento com dados reais e atualizados das principais empresas brasileiras. ## A diferença que isso faz Essa funcionalidade elimina a principal barreira para desenvolvedores testarem a brapi: a necessidade de comprometimento financeiro antes de validar se a API atende suas necessidades. Agora você pode: * ✅ Testar a qualidade e estrutura dos dados * ✅ Validar a performance da API * ✅ Desenvolver features complexas * ✅ Demonstrar valor para stakeholders * ✅ Fazer provas de conceito robustas Tudo isso **antes** de assinar qualquer plano. ## Próximos passos Ready para começar? Aqui está o que você pode fazer agora: 1. **Explore a [documentação](https://brapi.dev/docs)** para entender todos os endpoints disponíveis 2. **Teste os exemplos** diretamente no seu terminal ou ferramenta favorita 3. **Desenvolva sua aplicação** usando as quatro ações como base 4. **Quando estiver pronto para escalar**, escolha o [plano](https://brapi.dev/pricing) que faz sentido para o seu projeto ## Conclusão Essa mudança representa minha visão de como APIs devem funcionar: transparentes, acessíveis e focadas na experiência do desenvolvedor. Você não deveria precisar "comprar para experimentar" quando se trata de ferramentas que vão impactar diretamente o sucesso do seu projeto. A brapi continua sendo a API de dados financeiros mais completa do Brasil, e agora também é a mais acessível para começar. **Comece hoje mesmo.** Teste, desenvolva, valide e, quando estiver convencido do valor, escale para o universo completo de dados financeiros que a brapi oferece. *** *Tem dúvidas ou sugestões? Entre em contato pelo [Twitter](https://x.com/alissonsleal) ou através da nossa [página de contato](https://brapi.dev/contact). Adoraria saber como você está usando essa nova funcionalidade!* # AMD e IA 2025: Análise Completa de Riscos e Oportunidades no Setor URL: /blog/amd-boom-ia-analise-mercado-acoes.mdx Análise completa da AMD no boom da IA! Explore oportunidades, riscos e potencial de crescimento das ações AMD. Avaliação detalhada do mercado de semicondutores e inteligência artificial ✓ *** searchable: true title: 'AMD e IA 2025: Análise Completa de Riscos e Oportunidades no Setor' description: 'Análise completa da AMD no boom da IA! Explore oportunidades, riscos e potencial de crescimento das ações AMD. Avaliação detalhada do mercado de semicondutores e inteligência artificial ✓' date: '2025-08-22' keywords: 'AMD ações 2025, investimento IA, semicondutores, análise AMD, ações tecnologia, mercado IA, chips inteligência artificial, AMD vs NVIDIA, investir tecnologia' author: 'Equipe brapi.dev' category: 'Análise Setorial' subcategory: 'Tecnologia e IA' readingTime: '13 min' tags: \['AMD', 'Inteligência Artificial', 'Semicondutores', 'Tecnologia', 'Análise Setorial', 'Ações Tech', 'IA', 'Investimentos'] relatedPosts: \['analise-setorial-acoes-como-comparar-empresas-mesmo-segmento-b3', 'enterprise-value-ev-como-calcular-valor-real-empresa', 'analise-fundamentalista-acoes-indicadores-essenciais-investir-b3'] featured: false expertise: 'Análise especializada em setor de tecnologia e semicondutores com foco em mercados globais' lastReviewed: '2025-08-22' -------------------------- import { Authors, Author } from '~/components/Authors'; # AMD e o Boom da IA: Riscos, Oportunidades e Análise do Potencial de Crescimento no Mercado de Ações > Advanced Micro Devices, Inc. [AMD34](https://brapi.dev/quote/AMD) está > causando um grande burburinho no mundo dos investimentos com a introdução de > seu novo chip de IA, o MI300X. Investidores entusiasmados têm impulsionado as > ações da AMD perto de recordes históricos, antecipando o potencial que essa > nova tecnologia possui. Mas, antes de mergulhar de cabeça, é importante dar > uma olhada abrangente no negócio mais amplo da AMD e no cenário competitivo do > mercado de IA. ## O Mercado de IA: Uma Paisagem Competitiva O mercado de Inteligência artificial (IA) é atualmente um campo fértil de competição, com gigantes do mercado como [Nvidia](https://brapi.dev/quote/NVDA) e [Intel](https://brapi.dev/quote/INTC) também fazendo avanços significativos. O mercado deve atingir um valor impressionante de $190 bilhões até 2025, crescendo a uma taxa composta de crescimento anual (CAGR) de 36,62% de 2020 a 2025. O chip MI300X da AMD é um jogador chave nesta corrida, sendo divulgado para ter um desempenho compatível com os chips da Nvidia no treinamento de IA, mas superando-os no uso da IA treinada. No entanto, o ritmo rápido dos avanços tecnológicos e a volatilidade do mercado tornam este um setor de alto risco e alta recompensa. Embora o novo chip da AMD pareça promissor, a empresa ainda está atrás da Nvidia em vendas, indicando um caminho desafiador pela frente. ## Negócio Mais Amplo da AMD: Mais do que Apenas IA Embora a IA seja de fato um segmento lucrativo, a proposta de valor da AMD vai além disso. A empresa é uma líder no mercado de microprocessadores e processadores gráficos, que contribuem significativamente para seu valor. Os segmentos de consoles de jogos e PCs, em particular, oferecem estabilidade e potencial de crescimento, tornando-os considerações importantes para potenciais investidores. ## Justificativa de Avaliação: A AMD está Superestimada? Atualmente, as ações da AMD estão sendo negociadas com um prêmio. No entanto, os fortes fundamentos e vantagens competitivas da empresa justificam essa avaliação. Sua posição forte no mercado, portfólio de produtos inovadores e crescimento em setores de alta demanda, como jogos e data centers, fornecem uma base sólida para sua alta avaliação. ## Opções de Investimento Alternativas: Nvidia e Intel Investidores que procuram exposição ao mercado de IA têm outras opções a considerar. A Nvidia, concorrente direta da AMD, tem uma forte presença no mercado de IA. A Intel, com sua gama de produtos de IA, também apresenta uma proposta de investimento convincente. Avaliar essas alternativas pode fornecer uma perspectiva mais ampla e uma estratégia de investimento mais equilibrada. Em conclusão, embora o novo chip de IA da AMD apresente uma oportunidade tentadora, é importante que os investidores considerem o desempenho geral da empresa e o cenário competitivo da IA. Ainda são os primeiros dias para a IA, e projeções financeiras específicas para o segmento de IA da AMD ainda estão para ser lançadas. Portanto, os investidores devem ficar de olho nesses números e no cenário do mercado de IA que se desenrola antes de tomar quaisquer decisões de investimento significativas. # Análise de Balanço Patrimonial 2025: Usando balanceSheetHistory da API brapi URL: /blog/analise-financeira-com-modulo-balance-sheet-history.mdx Domine análise de balanço patrimonial com a API brapi! Aprenda a usar o módulo balanceSheetHistory para análise financeira detalhada e tomada de decisões informadas ✓ *** searchable: true title: 'Análise de Balanço Patrimonial 2025: Usando balanceSheetHistory da API brapi' description: 'Domine análise de balanço patrimonial com a API brapi! Aprenda a usar o módulo balanceSheetHistory para análise financeira detalhada e tomada de decisões informadas ✓' date: '2025-08-22' keywords: 'balanço patrimonial API, balanceSheetHistory brapi, análise financeira, demonstrações financeiras, API dados financeiros, análise fundamentalista programática' author: 'Equipe brapi.dev' category: 'API e Desenvolvimento' subcategory: 'Módulos Financeiros' readingTime: '11 min' tags: \['Balanço Patrimonial', 'API brapi', 'balanceSheetHistory', 'Análise Financeira', 'Desenvolvimento', 'Dados Financeiros', 'Programação', 'Módulos'] relatedPosts: \['como-usar-api-brapi-analise-acoes-guia-completo-desenvolvedores', 'demonstrativos-financeiros-um-olhar-detalhado-na-saude-financeira-da-empresa', 'balanco-patrimonial-acoes'] featured: false expertise: 'Equipe técnica especializada em APIs financeiras e estruturação de dados fundamentalistas' lastReviewed: '2025-08-22' -------------------------- import { Authors, Author } from '~/components/Authors'; # Análise Financeira com o Módulo `balanceSheetHistory` da API da brapi > Olá, leitores do blog da brapi! Hoje, estamos mergulhando na análise > financeira com o módulo `balanceSheetHistory`. Esta ferramenta poderosa > fornece uma visão detalhada da saúde financeira de uma empresa ao longo do > tempo, permitindo a tomada de decisões de investimento informadas. ## O que é `balanceSheetHistory`? Em termos simples, `balanceSheetHistory` é um módulo que permite uma análise minuciosa dos ativos, passivos e patrimônio líquido de uma empresa em um determinado período. Estes dados são fundamentais para avaliar a saúde financeira da empresa e seu desempenho ao longo do tempo. [Ler documentação da API da brapi](https://brapi.dev/docs/acoes#modules-opcional) ## Como funciona? Ao fazer uma solicitação para o módulo `balanceSheetHistory`, a brapi retorna uma série de dados relacionados aos ativos, passivos e patrimônio líquido da empresa para o período especificado. Isso inclui ativos de curto e longo prazo, passivos de curto e longo prazo, e detalhes do patrimônio líquido. * Exemplo de requisição: ```sh GET https://brapi.dev/api/quote/BBDC3?token=SEU_TOKEN&modules=balanceSheetHistory ``` Para obter dados trimestrais, basta utilizar o módulo *balanceSheetHistoryQuarterly*: ```sh GET https://brapi.dev/api/quote/BBDC3?token=SEU_TOKEN&modules=balanceSheetHistoryQuarterly ``` ## Por que isso é importante? A análise do balanço financeiro de uma empresa é um pilar fundamental da análise financeira e estatística. Ela fornece uma visão instantânea da posição financeira da empresa - o que ela possui (ativos), o que ela deve (passivos), e o valor que restaria se a empresa liquidasse todos os seus ativos e pagasse todos os seus passivos (patrimônio líquido). Os ativos e passivos são divididos entre correntes (que serão liquidados no próximo ano) e de longo prazo. A capacidade da empresa de cumprir suas obrigações de curto prazo é um indicador importante de sua solvência e risco financeiro. ## Exemplo prático Vamos dar uma olhada em um exemplo prático. Digamos que estamos analisando a empresa BBDC3. Fazemos uma solicitação para o módulo `balanceSheetHistory` e recebemos um conjunto de dados que detalham os ativos, passivos e patrimônio líquido da empresa. * Exemplo da resposta: ```json { "endDate": "2022-12-31T00:00:00.000Z", "cash": 20548372000, "shortTermInvestments": 109054313000, "netReceivables": 7706021000, "inventory": 1236931000, "otherCurrentAssets": 136876324000, "totalCurrentAssets": 297421734000, "longTermInvestments": 721810397000, "propertyPlantEquipment": 11971122000, "goodWill": 6542091000, "intangibleAssets": 12257722000, "otherAssets": 749612609000, "deferredLongTermAssetCharges": 85068043000, "totalAssets": 1799615675000, "accountsPayable": 593422900000, "shortLongTermDebt": 108819093000, "otherCurrentLiab": 43152274000, "longTermDebt": 235811267000, "otherLiab": 411157035000, "deferredLongTermLiab": 1285383000, "minorityInterest": 475906000, "totalCurrentLiabilities": 990312960000, "totalLiab": 1640874411000, "commonStock": 87100000000, "retainedEarnings": 74387465000, "treasuryStock": -3292603000, "capitalSurplus": 70496000, "otherStockholderEquity": -3068226000, "totalStockholderEquity": 158265358000, "netTangibleAssets": 143020180000 } ``` A partir desses dados, podemos ver que a empresa tem um total de ativos de R$1.799.615.675.000 (representado por `totalAssets`). Seus passivos totais (totalLiab) são R$1.640.874.411.000. A diferença entre esses dois, ou seja, o patrimônio líquido, é de por volta de R$158.265.358.000 (`totalStockholderEquity`). Essa informação nos diz que, se a BBDC3 liquidasse todos os seus ativos e pagasse todos os seus passivos hoje, restariam 158.265.358.000 para os acionistas. Isso é um indicador do valor intrínseco da empresa e pode ser usado para comparar com o valor de mercado atual para determinar se a empresa está subavaliada ou superavaliada. Além disso, ao analisar esses dados ao longo do tempo, podemos identificar tendências em termos de crescimento de ativos, acúmulo de passivos e aumento ou diminuição do patrimônio líquido. Isso nos ajuda a fazer previsões informadas sobre o futuro financeiro da empresa. ## Conclusão O módulo `balanceSheetHistory` é uma ferramenta poderosa para qualquer pessoa interessada em fazer uma análise financeira detalhada. Ele fornece uma visão abrangente da saúde financeira de uma empresa ao longo do tempo, permitindo a tomada de decisões de investimento informadas. Então, que tal experimentar o módulo `balanceSheetHistory` hoje e ver por si mesmo o quão útil ele pode ser? [Começar na brapi](https://brapi.dev/dashboard) # Análise Fundamentalista 2025: Framework Completo para Ações B3 URL: /blog/analise-fundamentalista-acoes-indicadores-essenciais-investir-b3.mdx Domine análise fundamentalista de ações! Framework completo com P/L, ROE, EBITDA, margens e indicadores essenciais. Guia prático para investir melhor na B3 ✓ *** searchable: true title: 'Análise Fundamentalista 2025: Framework Completo para Ações B3' description: 'Domine análise fundamentalista de ações! Framework completo com P/L, ROE, EBITDA, margens e indicadores essenciais. Guia prático para investir melhor na B3 ✓' date: '2025-08-22' keywords: 'análise fundamentalista, framework análise ações, indicadores financeiros, P/L, ROE, EBITDA, margem líquida, B3, valuation, investimento ações, brapi' author: 'Equipe brapi.dev' category: 'Análise Fundamentalista' subcategory: 'Framework de Análise' readingTime: '22 min' tags: \['Análise Fundamentalista', 'Framework Análise', 'B3', 'Indicadores', 'Investimentos', 'Valuation', 'Múltiplos'] relatedPosts: \['entendendo-indicador-preco-lucro-pl-analise-fundamentalista', 'roe-return-equity-como-avaliar-eficiencia-gestao-empresarial', 'guia-completo-indicadores-fundamentalistas-bovespa'] featured: true expertise: 'Framework de análise fundamentalista com 8+ anos de experiência no mercado brasileiro' lastReviewed: '2025-08-22' -------------------------- import { Authors, Author } from '~/components/Authors'; # Análise Fundamentalista de Ações: Indicadores Essenciais para Investir na B3 > A análise fundamentalista é a base para investimentos consistentes no longo prazo. Aprenda como analisar empresas usando indicadores financeiros, múltiplos de valuation e dados qualitativos para tomar decisões de investimento mais assertivas no mercado brasileiro. *** ## O que é Análise Fundamentalista? A **análise fundamentalista** é um método de avaliação de investimentos que examina fatores econômicos, financeiros e qualitativos que podem afetar o valor intrínseco de uma empresa. Diferentemente da análise técnica, que foca em padrões de preços, a análise fundamentalista busca determinar o valor real de um negócio. ### Pilares da Análise Fundamentalista #### 1. **Análise Quantitativa** * Demonstrações financeiras * Indicadores e múltiplos * Métricas de rentabilidade * Estrutura de capital #### 2. **Análise Qualitativa** * Qualidade da gestão * Vantagem competitiva * Posição no mercado * Governança corporativa #### 3. **Análise Macroeconômica** * Cenário econômico * Taxas de juros * Inflação * Políticas governamentais ## Framework de Análise com brapi.dev ### Estrutura Completa de Análise ```python import requests import pandas as pd from datetime import datetime, timedelta class AnalisadorFundamentalista: def __init__(self, token): self.token = token self.base_url = "https://brapi.dev/api" def analise_completa(self, ticker): """Realiza análise fundamentalista completa de uma ação""" # Obter dados da empresa dados_empresa = self.obter_dados_empresa(ticker) # Análise de múltiplos multiplos = self.calcular_multiplos(ticker) # Análise de rentabilidade rentabilidade = self.analisar_rentabilidade(ticker) # Análise de endividamento endividamento = self.analisar_endividamento(ticker) # Análise de crescimento crescimento = self.analisar_crescimento(ticker) # Score final score_final = self.calcular_score_total(multiplos, rentabilidade, endividamento, crescimento) return { 'ticker': ticker, 'dados_empresa': dados_empresa, 'multiplos': multiplos, 'rentabilidade': rentabilidade, 'endividamento': endividamento, 'crescimento': crescimento, 'score_final': score_final, 'recomendacao': self.gerar_recomendacao(score_final) } def obter_dados_empresa(self, ticker): """Obtém informações básicas da empresa""" url = f"{self.base_url}/quote/{ticker}?modules=summaryProfile,defaultKeyStatistics&token={self.token}" try: response = requests.get(url) data = response.json() acao = data['results'][0] profile = acao.get('summaryProfile', {}) stats = acao.get('defaultKeyStatistics', {}) return { 'nome': acao['longName'], 'setor': profile.get('sector', 'N/A'), 'industria': profile.get('industry', 'N/A'), 'funcionarios': profile.get('fullTimeEmployees', 0), 'market_cap': stats.get('marketCap', 0) / 1e9, # Em bilhões 'preco_atual': acao['regularMarketPrice'], 'variacao_52w': { 'minimo': acao.get('fiftyTwoWeekLow', 0), 'maximo': acao.get('fiftyTwoWeekHigh', 0) } } except Exception as e: print(f"Erro ao obter dados da empresa {ticker}: {e}") return {} def calcular_multiplos(self, ticker): """Calcula múltiplos de valuation""" url = f"{self.base_url}/quote/{ticker}?modules=defaultKeyStatistics,financialData&token={self.token}" try: response = requests.get(url) data = response.json() acao = data['results'][0] stats = acao.get('defaultKeyStatistics', {}) financials = acao.get('financialData', {}) multiplos = { 'pl': stats.get('forwardPE', 0), 'pvp': stats.get('priceToBook', 0), 'p_vendas': stats.get('priceToSalesTrailing12Months', 0), 'ev_ebitda': stats.get('enterpriseToEbitda', 0), 'ev_receita': stats.get('enterpriseToRevenue', 0), 'peg_ratio': stats.get('pegRatio', 0), 'dividend_yield': stats.get('dividendYield', 0) * 100 } # Scores dos múltiplos (0-100) scores = { 'score_pl': self.score_pl(multiplos['pl']), 'score_pvp': self.score_pvp(multiplos['pvp']), 'score_ev_ebitda': self.score_ev_ebitda(multiplos['ev_ebitda']), 'score_dy': self.score_dy(multiplos['dividend_yield']) } multiplos.update(scores) multiplos['score_medio_multiplos'] = sum(scores.values()) / len(scores) return multiplos except Exception as e: print(f"Erro ao calcular múltiplos para {ticker}: {e}") return {} def analisar_rentabilidade(self, ticker): """Analisa indicadores de rentabilidade""" url = f"{self.base_url}/quote/{ticker}?modules=financialData&token={self.token}" try: response = requests.get(url) data = response.json() financials = data['results'][0].get('financialData', {}) rentabilidade = { 'roe': financials.get('returnOnEquity', 0) * 100, 'roa': financials.get('returnOnAssets', 0) * 100, 'roic': self.calcular_roic(ticker), # Calculado separadamente 'margem_bruta': financials.get('grossMargins', 0) * 100, 'margem_operacional': financials.get('operatingMargins', 0) * 100, 'margem_liquida': financials.get('profitMargins', 0) * 100 } # Scores de rentabilidade scores = { 'score_roe': self.score_roe(rentabilidade['roe']), 'score_roa': self.score_roa(rentabilidade['roa']), 'score_margem_liquida': self.score_margem_liquida(rentabilidade['margem_liquida']) } rentabilidade.update(scores) rentabilidade['score_medio_rentabilidade'] = sum(scores.values()) / len(scores) return rentabilidade except Exception as e: print(f"Erro ao analisar rentabilidade para {ticker}: {e}") return {} def analisar_endividamento(self, ticker): """Analisa estrutura de capital e endividamento""" url = f"{self.base_url}/quote/{ticker}?modules=defaultKeyStatistics,financialData&token={self.token}" try: response = requests.get(url) data = response.json() stats = data['results'][0].get('defaultKeyStatistics', {}) financials = data['results'][0].get('financialData', {}) endividamento = { 'divida_patrimonio': financials.get('debtToEquity', 0), 'liquidez_corrente': financials.get('currentRatio', 0), 'liquidez_seca': financials.get('quickRatio', 0), 'cobertura_juros': stats.get('interestCoverage', 0), 'divida_ebitda': self.calcular_divida_ebitda(ticker) } # Scores de endividamento scores = { 'score_liquidez': self.score_liquidez_corrente(endividamento['liquidez_corrente']), 'score_endividamento': self.score_endividamento(endividamento['divida_patrimonio']) } endividamento.update(scores) endividamento['score_medio_endividamento'] = sum(scores.values()) / len(scores) return endividamento except Exception as e: print(f"Erro ao analisar endividamento para {ticker}: {e}") return {} def analisar_crescimento(self, ticker): """Analisa indicadores de crescimento""" # Esta função seria expandida com dados históricos # Por ora, usar dados disponíveis na API url = f"{self.base_url}/quote/{ticker}?modules=defaultKeyStatistics&token={self.token}" try: response = requests.get(url) data = response.json() stats = data['results'][0].get('defaultKeyStatistics', {}) crescimento = { 'crescimento_receita_ttm': stats.get('revenueGrowth', 0) * 100, 'crescimento_lucro_ttm': stats.get('earningsGrowth', 0) * 100, 'payout_ratio': stats.get('payoutRatio', 0) * 100, 'retencao_lucros': 100 - (stats.get('payoutRatio', 0) * 100), 'reinvestimento': self.calcular_taxa_reinvestimento(ticker) } # Score de crescimento score_crescimento = self.score_crescimento( crescimento['crescimento_receita_ttm'], crescimento['crescimento_lucro_ttm'] ) crescimento['score_crescimento'] = score_crescimento return crescimento except Exception as e: print(f"Erro ao analisar crescimento para {ticker}: {e}") return {} # Métodos auxiliares para scoring def score_pl(self, pl): """Score P/L (0-100, maior score = melhor)""" if pl <= 0: return 0 elif pl <= 8: return 100 elif pl <= 12: return 80 elif pl <= 18: return 60 elif pl <= 25: return 40 else: return 20 def score_pvp(self, pvp): """Score P/VP (0-100, maior score = melhor)""" if pvp <= 0: return 0 elif pvp <= 1: return 100 elif pvp <= 1.5: return 80 elif pvp <= 2: return 60 elif pvp <= 3: return 40 else: return 20 def score_ev_ebitda(self, ev_ebitda): """Score EV/EBITDA (0-100, maior score = melhor)""" if ev_ebitda <= 0: return 0 elif ev_ebitda <= 6: return 100 elif ev_ebitda <= 10: return 80 elif ev_ebitda <= 15: return 60 elif ev_ebitda <= 20: return 40 else: return 20 def score_dy(self, dy): """Score Dividend Yield (0-100, maior score = melhor)""" if dy >= 8: return 100 elif dy >= 6: return 80 elif dy >= 4: return 60 elif dy >= 2: return 40 else: return 20 def score_roe(self, roe): """Score ROE (0-100, maior score = melhor)""" if roe >= 25: return 100 elif roe >= 20: return 80 elif roe >= 15: return 60 elif roe >= 10: return 40 else: return 20 def score_roa(self, roa): """Score ROA (0-100, maior score = melhor)""" if roa >= 15: return 100 elif roa >= 10: return 80 elif roa >= 7: return 60 elif roa >= 5: return 40 else: return 20 def score_margem_liquida(self, margem): """Score Margem Líquida (0-100, maior score = melhor)""" if margem >= 20: return 100 elif margem >= 15: return 80 elif margem >= 10: return 60 elif margem >= 5: return 40 else: return 20 def score_liquidez_corrente(self, liquidez): """Score Liquidez Corrente (0-100, maior score = melhor)""" if liquidez >= 2: return 100 elif liquidez >= 1.5: return 80 elif liquidez >= 1.2: return 60 elif liquidez >= 1: return 40 else: return 20 def score_endividamento(self, debt_equity): """Score Endividamento (0-100, maior score = melhor)""" if debt_equity <= 0.3: return 100 elif debt_equity <= 0.5: return 80 elif debt_equity <= 0.8: return 60 elif debt_equity <= 1.2: return 40 else: return 20 def score_crescimento(self, crescimento_receita, crescimento_lucro): """Score Crescimento (0-100, maior score = melhor)""" crescimento_medio = (crescimento_receita + crescimento_lucro) / 2 if crescimento_medio >= 20: return 100 elif crescimento_medio >= 15: return 80 elif crescimento_medio >= 10: return 60 elif crescimento_medio >= 5: return 40 else: return 20 def calcular_roic(self, ticker): """Calcula ROIC (simplificado)""" # Implementação simplificada - na prática seria mais complexa return 0 # Placeholder def calcular_divida_ebitda(self, ticker): """Calcula Dívida/EBITDA""" # Implementação simplificada return 0 # Placeholder def calcular_taxa_reinvestimento(self, ticker): """Calcula taxa de reinvestimento""" # Implementação simplificada return 0 # Placeholder def calcular_score_total(self, multiplos, rentabilidade, endividamento, crescimento): """Calcula score total ponderado""" scores = [ multiplos.get('score_medio_multiplos', 0), rentabilidade.get('score_medio_rentabilidade', 0), endividamento.get('score_medio_endividamento', 0), crescimento.get('score_crescimento', 0) ] # Pesos: Múltiplos 30%, Rentabilidade 35%, Endividamento 20%, Crescimento 15% pesos = [0.30, 0.35, 0.20, 0.15] score_total = sum(score * peso for score, peso in zip(scores, pesos)) return { 'score_total': score_total, 'scores_individuais': { 'multiplos': scores[0], 'rentabilidade': scores[1], 'endividamento': scores[2], 'crescimento': scores[3] } } def gerar_recomendacao(self, score_final): """Gera recomendação baseada no score""" score = score_final['score_total'] if score >= 80: return { 'recomendacao': 'COMPRA FORTE', 'descricao': 'Empresa com excelentes fundamentos', 'cor': 'verde' } elif score >= 60: return { 'recomendacao': 'COMPRA', 'descricao': 'Empresa com bons fundamentos', 'cor': 'verde-claro' } elif score >= 40: return { 'recomendacao': 'NEUTRO', 'descricao': 'Empresa com fundamentos medianos', 'cor': 'amarelo' } elif score >= 20: return { 'recomendacao': 'VENDA', 'descricao': 'Empresa com fundamentos fracos', 'cor': 'laranja' } else: return { 'recomendacao': 'VENDA FORTE', 'descricao': 'Empresa com fundamentos ruins', 'cor': 'vermelho' } # Exemplo de uso do analisador analisador = AnalisadorFundamentalista('SEU_TOKEN') # Analisar uma empresa analise_petr4 = analisador.analise_completa('PETR4') print("📊 ANÁLISE FUNDAMENTALISTA - PETR4") print("=" * 50) print(f"Empresa: {analise_petr4['dados_empresa']['nome']}") print(f"Setor: {analise_petr4['dados_empresa']['setor']}") print(f"Market Cap: R$ {analise_petr4['dados_empresa']['market_cap']:.1f}B") print(f"\n📈 MÚLTIPLOS:") print(f"P/L: {analise_petr4['multiplos']['pl']:.1f}") print(f"P/VP: {analise_petr4['multiplos']['pvp']:.2f}") print(f"EV/EBITDA: {analise_petr4['multiplos']['ev_ebitda']:.1f}") print(f"DY: {analise_petr4['multiplos']['dividend_yield']:.2f}%") print(f"\n💰 RENTABILIDADE:") print(f"ROE: {analise_petr4['rentabilidade']['roe']:.1f}%") print(f"ROA: {analise_petr4['rentabilidade']['roa']:.1f}%") print(f"Margem Líquida: {analise_petr4['rentabilidade']['margem_liquida']:.1f}%") print(f"\n🎯 SCORE FINAL: {analise_petr4['score_final']['score_total']:.1f}/100") print(f"Recomendação: {analise_petr4['recomendacao']['recomendacao']}") print(f"Descrição: {analise_petr4['recomendacao']['descricao']}") ``` ## Análise de Demonstrações Financeiras ### Demonstração de Resultados (DRE) ```python def analisar_dre(ticker, token): """Analisa Demonstração de Resultados""" url = f"https://brapi.dev/api/quote/{ticker}?modules=incomeStatementHistory&token={token}" try: response = requests.get(url) data = response.json() income_statements = data['results'][0].get('incomeStatementHistory', {}).get('incomeStatementHistory', []) if not income_statements: return {} # Analisar últimos 3 anos analise_dre = [] for statement in income_statements[:3]: ano = datetime.fromtimestamp(statement['endDate']).year receita_liquida = statement.get('totalRevenue', 0) custo_vendas = statement.get('costOfRevenue', 0) lucro_bruto = statement.get('grossProfit', 0) lucro_operacional = statement.get('operatingIncome', 0) lucro_liquido = statement.get('netIncome', 0) # Calcular margens margem_bruta = (lucro_bruto / receita_liquida * 100) if receita_liquida > 0 else 0 margem_operacional = (lucro_operacional / receita_liquida * 100) if receita_liquida > 0 else 0 margem_liquida = (lucro_liquido / receita_liquida * 100) if receita_liquida > 0 else 0 analise_dre.append({ 'ano': ano, 'receita_liquida': receita_liquida / 1e9, # Em bilhões 'lucro_bruto': lucro_bruto / 1e9, 'lucro_operacional': lucro_operacional / 1e9, 'lucro_liquido': lucro_liquido / 1e9, 'margem_bruta': margem_bruta, 'margem_operacional': margem_operacional, 'margem_liquida': margem_liquida }) # Calcular tendências if len(analise_dre) >= 2: receita_crescimento = ((analise_dre[0]['receita_liquida'] - analise_dre[1]['receita_liquida']) / analise_dre[1]['receita_liquida'] * 100) lucro_crescimento = ((analise_dre[0]['lucro_liquido'] - analise_dre[1]['lucro_liquido']) / analise_dre[1]['lucro_liquido'] * 100) else: receita_crescimento = 0 lucro_crescimento = 0 return { 'dados_anuais': analise_dre, 'tendencias': { 'crescimento_receita': receita_crescimento, 'crescimento_lucro': lucro_crescimento, 'evolucao_margem_liquida': analise_dre[0]['margem_liquida'] - analise_dre[1]['margem_liquida'] if len(analise_dre) >= 2 else 0 } } except Exception as e: print(f"Erro ao analisar DRE de {ticker}: {e}") return {} # Exemplo de análise DRE dre_analise = analisar_dre('WEGE3', 'SEU_TOKEN') if dre_analise: print("📋 ANÁLISE DRE - WEGE3") print("=" * 40) for ano_data in dre_analise['dados_anuais']: print(f"\n📅 Ano {ano_data['ano']}:") print(f" Receita: R$ {ano_data['receita_liquida']:.1f}B") print(f" Lucro Líquido: R$ {ano_data['lucro_liquido']:.1f}B") print(f" Margem Líquida: {ano_data['margem_liquida']:.1f}%") print(f"\n📈 TENDÊNCIAS:") print(f" Crescimento Receita: {dre_analise['tendencias']['crescimento_receita']:+.1f}%") print(f" Crescimento Lucro: {dre_analise['tendencias']['crescimento_lucro']:+.1f}%") print(f" Evolução Margem: {dre_analise['tendencias']['evolucao_margem_liquida']:+.1f} p.p.") ``` ### Balanço Patrimonial ```python def analisar_balanco(ticker, token): """Analisa Balanço Patrimonial""" url = f"https://brapi.dev/api/quote/{ticker}?modules=balanceSheetHistory&token={token}" try: response = requests.get(url) data = response.json() balance_sheets = data['results'][0].get('balanceSheetHistory', {}).get('balanceSheetStatements', []) if not balance_sheets: return {} # Analisar último balanço balanco_atual = balance_sheets[0] # Ativos ativo_circulante = balanco_atual.get('totalCurrentAssets', 0) ativo_total = balanco_atual.get('totalAssets', 0) # Passivos passivo_circulante = balanco_atual.get('totalCurrentLiabilities', 0) divida_total = balanco_atual.get('totalLiab', 0) patrimonio_liquido = balanco_atual.get('totalStockholderEquity', 0) # Calcular indicadores liquidez_corrente = ativo_circulante / passivo_circulante if passivo_circulante > 0 else 0 debt_to_equity = divida_total / patrimonio_liquido if patrimonio_liquido > 0 else 0 ativo_circulante_pct = (ativo_circulante / ativo_total * 100) if ativo_total > 0 else 0 return { 'ativo_total': ativo_total / 1e9, # Em bilhões 'ativo_circulante': ativo_circulante / 1e9, 'passivo_circulante': passivo_circulante / 1e9, 'patrimonio_liquido': patrimonio_liquido / 1e9, 'divida_total': divida_total / 1e9, 'indicadores': { 'liquidez_corrente': liquidez_corrente, 'debt_to_equity': debt_to_equity, 'ativo_circulante_pct': ativo_circulante_pct, 'composicao_ativo': 'Circulante' if ativo_circulante_pct > 50 else 'Permanente' } } except Exception as e: print(f"Erro ao analisar balanço de {ticker}: {e}") return {} # Exemplo de análise do balanço balanco_analise = analisar_balanco('ITUB4', 'SEU_TOKEN') if balanco_analise: print("⚖️ ANÁLISE BALANÇO - ITUB4") print("=" * 40) print(f"Ativo Total: R$ {balanco_analise['ativo_total']:.1f}B") print(f"Patrimônio Líquido: R$ {balanco_analise['patrimonio_liquido']:.1f}B") print(f"Dívida Total: R$ {balanco_analise['divida_total']:.1f}B") print(f"Liquidez Corrente: {balanco_analise['indicadores']['liquidez_corrente']:.2f}") print(f"Debt/Equity: {balanco_analise['indicadores']['debt_to_equity']:.2f}") ``` ## Screening Fundamentalista Avançado ### Sistema de Filtros Múltiplos ```python def screening_fundamentalista_avancado(universo_acoes, criterios, token): """Sistema avançado de screening fundamentalista""" resultados = [] for ticker in universo_acoes: try: print(f"Analisando {ticker}...") # Análise completa analisador = AnalisadorFundamentalista(token) analise = analisador.analise_completa(ticker) if not analise: continue # Aplicar filtros multiplos = analise['multiplos'] rentabilidade = analise['rentabilidade'] endividamento = analise['endividamento'] crescimento = analise['crescimento'] # Filtros de múltiplos if (multiplos.get('pl', 0) > criterios['pl_max'] or multiplos.get('pvp', 0) > criterios['pvp_max'] or multiplos.get('ev_ebitda', 0) > criterios['ev_ebitda_max']): continue # Filtros de rentabilidade if (rentabilidade.get('roe', 0) < criterios['roe_min'] or rentabilidade.get('margem_liquida', 0) < criterios['margem_min']): continue # Filtros de endividamento if (endividamento.get('liquidez_corrente', 0) < criterios['liquidez_min'] or endividamento.get('divida_patrimonio', 0) > criterios['debt_equity_max']): continue # Filtros de crescimento if crescimento.get('crescimento_receita_ttm', 0) < criterios['crescimento_min']: continue # Se passou em todos os filtros, incluir na lista resultado = { 'ticker': ticker, 'nome': analise['dados_empresa']['nome'], 'setor': analise['dados_empresa']['setor'], 'score_total': analise['score_final']['score_total'], 'recomendacao': analise['recomendacao']['recomendacao'], 'metricas_chave': { 'pl': multiplos.get('pl', 0), 'pvp': multiplos.get('pvp', 0), 'roe': rentabilidade.get('roe', 0), 'dy': multiplos.get('dividend_yield', 0), 'margem_liquida': rentabilidade.get('margem_liquida', 0), 'crescimento_receita': crescimento.get('crescimento_receita_ttm', 0) } } resultados.append(resultado) except Exception as e: print(f"Erro ao analisar {ticker}: {e}") continue # Ordenar por score total return sorted(resultados, key=lambda x: x['score_total'], reverse=True) # Critérios de screening criterios_avancados = { # Múltiplos 'pl_max': 20, 'pvp_max': 3, 'ev_ebitda_max': 15, # Rentabilidade 'roe_min': 15, 'margem_min': 5, # Endividamento 'liquidez_min': 1.2, 'debt_equity_max': 1.0, # Crescimento 'crescimento_min': 0 # Pelo menos estável } # Universo de ações (top por liquidez) universo_screening = [ 'PETR4', 'VALE3', 'ITUB4', 'BBDC4', 'ABEV3', 'BBAS3', 'WEGE3', 'RENT3', 'EGIE3', 'MGLU3', 'LREN3', 'RAIL3', 'VIVT3', 'KLBN11', 'SBSP3', 'SUZB3', 'GGBR4', 'USIM5', 'BRFS3', 'JBSS3', 'EMBR3', 'GOAU4', 'CPLE6', 'TAEE11' ] # Executar screening (demonstração com subset menor) acoes_subset = universo_screening[:5] # Apenas 5 para demonstração oportunidades = screening_fundamentalista_avancado(acoes_subset, criterios_avancados, 'SEU_TOKEN') print("🎯 OPORTUNIDADES IDENTIFICADAS") print("=" * 80) for i, oportunidade in enumerate(oportunidades, 1): print(f"{i}. {oportunidade['ticker']} - {oportunidade['nome']}") print(f" Setor: {oportunidade['setor']}") print(f" Score: {oportunidade['score_total']:.1f}/100 - {oportunidade['recomendacao']}") print(f" P/L: {oportunidade['metricas_chave']['pl']:.1f} | ROE: {oportunidade['metricas_chave']['roe']:.1f}% | DY: {oportunidade['metricas_chave']['dy']:.1f}%") print() ``` ## Análise Qualitativa ### Framework de Avaliação Qualitativa ```python def avaliacacao_qualitativa(ticker): """Framework de avaliação qualitativa de empresas""" # Esta análise seria baseada em pesquisa e dados qualitativos # Aqui apresentamos um framework conceitual criterios_qualitativos = { 'gestao': { 'peso': 25, 'fatores': [ 'Histórico da gestão', 'Transparência nas comunicações', 'Estratégia clara', 'Governança corporativa' ], 'score': 0 # Seria preenchido com pesquisa }, 'vantagem_competitiva': { 'peso': 30, 'fatores': [ 'Diferenciação do produto', 'Barreiras de entrada', 'Posição de mercado', 'Rede de distribuição' ], 'score': 0 }, 'mercado': { 'peso': 20, 'fatores': [ 'Tamanho do mercado', 'Taxa de crescimento', 'Competitividade', 'Regulamentação' ], 'score': 0 }, 'financeiro': { 'peso': 15, 'fatores': [ 'Qualidade dos lucros', 'Geração de caixa', 'Estrutura de capital', 'Política de dividendos' ], 'score': 0 }, 'sustentabilidade': { 'peso': 10, 'fatores': [ 'Práticas ESG', 'Sustentabilidade ambiental', 'Responsabilidade social', 'Compliance' ], 'score': 0 } } return criterios_qualitativos def exemplos_analise_qualitativa(): """Exemplos práticos de análise qualitativa""" exemplos = { 'WEGE3': { 'gestao': { 'score': 90, 'comentarios': 'Gestão familiar profissionalizada, foco em inovação' }, 'vantagem_competitiva': { 'score': 85, 'comentarios': 'Líder em motores elétricos, marca forte, P&D' }, 'mercado': { 'score': 80, 'comentarios': 'Mercado de automação industrial em crescimento' } }, 'VALE3': { 'gestao': { 'score': 70, 'comentarios': 'Governança melhorada pós-Brumadinho' }, 'vantagem_competitiva': { 'score': 95, 'comentarios': 'Baixo custo, reservas de qualidade' }, 'mercado': { 'score': 60, 'comentarios': 'Mercado cíclico, dependente da China' } } } return exemplos # Exemplo de uso exemplos_qual = exemplos_analise_qualitativa() print("🔍 ANÁLISE QUALITATIVA - EXEMPLOS") print("=" * 50) for ticker, analise in exemplos_qual.items(): print(f"\n{ticker}:") for criterio, dados in analise.items(): print(f" {criterio.title()}: {dados['score']}/100") print(f" {dados['comentarios']}") ``` ## Relatório de Análise Completa ### Gerador de Relatório Automático ```python def gerar_relatorio_completo(ticker, token): """Gera relatório completo de análise fundamentalista""" # Realizar todas as análises analisador = AnalisadorFundamentalista(token) analise_principal = analisador.analise_completa(ticker) dre_dados = analisar_dre(ticker, token) balanco_dados = analisar_balanco(ticker, token) # Estruturar relatório relatorio = { 'ticker': ticker, 'data_analise': datetime.now().strftime('%d/%m/%Y'), 'resumo_executivo': gerar_resumo_executivo(analise_principal), 'dados_empresa': analise_principal['dados_empresa'], 'analise_quantitativa': { 'multiplos': analise_principal['multiplos'], 'rentabilidade': analise_principal['rentabilidade'], 'endividamento': analise_principal['endividamento'], 'crescimento': analise_principal['crescimento'] }, 'demonstracoes': { 'dre': dre_dados, 'balanco': balanco_dados }, 'score_final': analise_principal['score_final'], 'recomendacao': analise_principal['recomendacao'] } return relatorio def gerar_resumo_executivo(analise): """Gera resumo executivo da análise""" score = analise['score_final']['score_total'] pontos_fortes = [] pontos_fracos = [] # Múltiplos if analise['multiplos'].get('score_medio_multiplos', 0) > 70: pontos_fortes.append("Múltiplos de valuation atrativos") elif analise['multiplos'].get('score_medio_multiplos', 0) < 40: pontos_fracos.append("Múltiplos de valuation elevados") # Rentabilidade if analise['rentabilidade'].get('score_medio_rentabilidade', 0) > 70: pontos_fortes.append("Alta rentabilidade e eficiência operacional") elif analise['rentabilidade'].get('score_medio_rentabilidade', 0) < 40: pontos_fracos.append("Rentabilidade abaixo da média") # Endividamento if analise['endividamento'].get('score_medio_endividamento', 0) > 70: pontos_fortes.append("Estrutura de capital sólida") elif analise['endividamento'].get('score_medio_endividamento', 0) < 40: pontos_fracos.append("Endividamento elevado") return { 'score_geral': score, 'classificacao': 'Excelente' if score >= 80 else 'Boa' if score >= 60 else 'Mediana' if score >= 40 else 'Fraca', 'pontos_fortes': pontos_fortes, 'pontos_fracos': pontos_fracos } def formatar_relatorio_html(relatorio): """Formata relatório em HTML""" html = f""" Análise Fundamentalista - {relatorio['ticker']} Análise Fundamentalista
{relatorio['ticker']} - {relatorio['dados_empresa']['nome']}
Análise realizada em {relatorio['data_analise']}
Resumo Executivo
Score Final: {relatorio['score_final']['score_total']:.1f}/100Classificação: {relatorio['resumo_executivo']['classificacao']}
Recomendação: {relatorio['recomendacao']['recomendacao']}
Pontos Fortes
""" for ponto in relatorio['resumo_executivo']['pontos_fortes']: html += f"
- {ponto}
" html += """Pontos de Atenção
""" for ponto in relatorio['resumo_executivo']['pontos_fracos']: html += f"
- {ponto}
" html += f"""Informações da Empresa
Setor {relatorio['dados_empresa']['setor']} Indústria {relatorio['dados_empresa']['industria']} Market Cap R$ {relatorio['dados_empresa']['market_cap']:.1f}B Funcionários {relatorio['dados_empresa']['funcionarios']:,} Múltiplos de Valuation
P/L {relatorio['analise_quantitativa']['multiplos']['pl']:.1f} P/VP {relatorio['analise_quantitativa']['multiplos']['pvp']:.2f} EV/EBITDA {relatorio['analise_quantitativa']['multiplos']['ev_ebitda']:.1f} Dividend Yield {relatorio['analise_quantitativa']['multiplos']['dividend_yield']:.2f}% """ return html # Exemplo de geração de relatório relatorio_exemplo = gerar_relatorio_completo('WEGE3', 'SEU_TOKEN') html_relatorio = formatar_relatorio_html(relatorio_exemplo) # Salvar relatório with open(f"relatorio_{relatorio_exemplo['ticker']}_{datetime.now().strftime('%Y%m%d')}.html", 'w', encoding='utf-8') as f: f.write(html_relatorio) print(f"✅ Relatório de {relatorio_exemplo['ticker']} gerado com sucesso!") ``` ## Conclusão A análise fundamentalista é uma ferramenta poderosa para identificar empresas de qualidade e oportunidades de investimento no longo prazo. Através da combinação de análise quantitativa e qualitativa, é possível tomar decisões mais informadas e consistentes. ### Pontos-Chave da Análise Fundamentalista: 1. **Visão Holística**: Combine múltiplos, rentabilidade, endividamento e crescimento 2. **Contexto Setorial**: Compare sempre com empresas do mesmo setor 3. **Análise Temporal**: Observe tendências históricas, não apenas dados pontuais 4. **Fatores Qualitativos**: Gestão e vantagem competitiva são fundamentais 5. **Disciplina**: Mantenha critérios consistentes e objetivos ### Próximos Passos: * **[Explore nossa API completa](/docs)** para dados fundamentalistas detalhados * **[Use nossa plataforma](/quotes)** para análises interativas * **Implemente os frameworks** apresentados neste guia * **Combine com análise setorial** para maior precisão ### Recursos Adicionais: * **[Dados históricos](/docs)** para análise de tendências * **[Módulos especializados](/docs/acoes)** para diferentes tipos de análise * **[Exemplos práticos](/docs/examples)** de implementação **Lembre-se**: A análise fundamentalista requer tempo e dedicação. Não há atalhos para uma análise de qualidade, mas com as ferramentas certas e metodologia consistente, os resultados compensam o esforço investido! # Análise Setorial 2025: Como Comparar Empresas e Encontrar Líderes URL: /blog/analise-setorial-acoes-como-comparar-empresas-mesmo-segmento-b3.mdx Domine análise setorial na B3! Aprenda comparação de empresas, múltiplos setoriais, peer analysis e como identificar líderes e oportunidades por setor ✓ *** searchable: true title: 'Análise Setorial 2025: Como Comparar Empresas e Encontrar Líderes' description: 'Domine análise setorial na B3! Aprenda comparação de empresas, múltiplos setoriais, peer analysis e como identificar líderes e oportunidades por setor ✓' date: '2025-08-22' keywords: 'análise setorial, comparação empresas, múltiplos setoriais, B3, setores economia, líderes mercado, peer comparison, análise fundamentalista, brapi' author: 'Equipe brapi.dev' category: 'Análise Setorial' subcategory: 'Comparação Empresarial' readingTime: '20 min' tags: \['Análise Setorial', 'Comparação Empresas', 'B3', 'Múltiplos', 'Investimentos', 'Peer Analysis', 'Setores'] relatedPosts: \['analise-fundamentalista-acoes-indicadores-essenciais-investir-b3', 'como-construir-carteira-investimentos-diversificada-brapi', 'indicadores-economicos-brasil-selic-ipca-igpm-impacto-investimentos'] featured: true expertise: 'Análise setorial com 8+ anos de experiência no mercado brasileiro' lastReviewed: '2025-08-22' -------------------------- import { Authors, Author } from '~/components/Authors'; # Análise Setorial de Ações: Como Comparar Empresas do Mesmo Segmento na B3 > A análise setorial é fundamental para identificar as melhores oportunidades de investimento. Comparar empresas do mesmo setor permite encontrar líderes de mercado, identificar tendências e descobrir ações subvalorizadas. Aprenda como fazer essa análise usando dados da brapi.dev.Indicadores de Rentabilidade
ROE {relatorio['analise_quantitativa']['rentabilidade']['roe']:.1f}% ROA {relatorio['analise_quantitativa']['rentabilidade']['roa']:.1f}% Margem Líquida {relatorio['analise_quantitativa']['rentabilidade']['margem_liquida']:.1f}% Margem Operacional {relatorio['analise_quantitativa']['rentabilidade']['margem_operacional']:.1f}% *** ## Por que a Análise Setorial é Importante? A **análise setorial** permite comparar empresas que operam no mesmo ambiente competitivo, enfrentam regulamentações similares e são afetadas pelos mesmos fatores macroeconômicos. Essa comparação é essencial para: ### 1. **Contexto de Avaliação** * Múltiplos isolados podem enganar * Cada setor tem características únicas * Padrões de sazonalidade específicos ### 2. **Identificação de Líderes** * Empresas com vantagem competitiva * Gestão superior * Posição de mercado consolidada ### 3. **Oportunidades Relativas** * Ações subvalorizadas no setor * Disparidades de valuation * Momentos de entrada/saída ## Principais Setores da B3 ### 1. **Setor Financeiro** **Características:** * Regulamentação específica (Banco Central) * Sensibilidade à taxa de juros * Alavancagem natural do negócio **Subsetores:** * Bancos comerciais * Seguradoras * Corretoras **Principais Players:** ITUB4, BBDC4, BBAS3, BBSE3 ### 2. **Utilities (Energia e Saneamento)** **Características:** * Concessões de longo prazo * Fluxo de caixa previsível * Regulamentação por agências (ANEEL, ANA) **Subsetores:** * Energia elétrica * Saneamento * Gás **Principais Players:** EGIE3, SBSP3, CPLE6, TAEE11 ### 3. **Commodities e Mineração** **Características:** * Ciclicidade elevada * Exposição a preços internacionais * Intensivo em capital **Subsetores:** * Mineração de ferro * Petróleo e gás * Celulose e papel **Principais Players:** VALE3, PETR4, SUZB3, KLBN11 ### 4. **Consumo e Varejo** **Características:** * Sensibilidade ao cenário econômico * Sazonalidade nas vendas * Diferentes canais de distribuição **Subsetores:** * Varejo físico * E-commerce * Alimentação **Principais Players:** MGLU3, LREN3, ABEV3, BRFS3 ## Métricas-Chave por Setor ### Setor Bancário #### Indicadores Específicos: ```javascript const analiseBanco = { eficiencia: 'Índice de Eficiência (< 50% é bom)', qualidadeCredito: 'Taxa de Inadimplência (< 5% é boa)', rentabilidade: 'ROE (15-25% é típico)', capitalização: 'Índice de Basileia (> 11% é obrigatório)', crescimento: 'Crescimento da Carteira de Crédito' }; ``` #### Análise Comparativa via API: ```python def analisar_setor_bancario(tickers_bancos, token): """Análise específica para setor bancário""" resultados = [] for ticker in tickers_bancos: url = f"https://brapi.dev/api/quote/{ticker}?modules=defaultKeyStatistics,financialData&token={token}" response = requests.get(url) data = response.json() acao = data['results'][0] stats = acao.get('defaultKeyStatistics', {}) financials = acao.get('financialData', {}) analise = { 'ticker': ticker, 'nome': acao['shortName'], 'preco': acao['regularMarketPrice'], 'p_vp': stats.get('priceToBook', 0), 'roe': financials.get('returnOnEquity', 0) * 100, 'dividend_yield': stats.get('dividendYield', 0) * 100, 'market_cap': stats.get('marketCap', 0) / 1e9, 'eficiencia_score': calcular_score_eficiencia(ticker, token) } resultados.append(analise) # Ordenar por ROE (maior para menor) return sorted(resultados, key=lambda x: x['roe'], reverse=True) # Exemplo de uso bancos = ['ITUB4', 'BBDC4', 'BBAS3', 'SANB11', 'BPAC11'] ranking_bancos = analisar_setor_bancario(bancos, 'SEU_TOKEN') print("🏦 RANKING SETOR BANCÁRIO") print("-" * 50) for i, banco in enumerate(ranking_bancos, 1): print(f"{i}. {banco['ticker']} - {banco['nome']}") print(f" ROE: {banco['roe']:.1f}% | P/VP: {banco['p_vp']:.2f} | DY: {banco['dividend_yield']:.1f}%") ``` ### Setor de Utilities #### Métricas Relevantes: ```python def analisar_utilities(tickers_utilities, token): """Análise específica para utilities""" resultados = [] for ticker in tickers_utilities: url = f"https://brapi.dev/api/quote/{ticker}?modules=defaultKeyStatistics,financialData&token={token}" response = requests.get(url) data = response.json() acao = data['results'][0] stats = acao.get('defaultKeyStatistics', {}) financials = acao.get('financialData', {}) # Calcular EV/EBITDA específico para utilities ev = stats.get('enterpriseValue', 0) ebitda = stats.get('enterpriseToEbitda', 0) analise = { 'ticker': ticker, 'nome': acao['shortName'], 'ev_ebitda': ebitda, 'dividend_yield': stats.get('dividendYield', 0) * 100, 'roe': financials.get('returnOnEquity', 0) * 100, 'margem_liquida': financials.get('profitMargins', 0) * 100, 'crescimento_receita': calcular_crescimento_receita(ticker, token), 'estabilidade_dividendos': avaliar_estabilidade_dividendos(ticker, token) } resultados.append(analise) return sorted(resultados, key=lambda x: x['dividend_yield'], reverse=True) utilities = ['EGIE3', 'SBSP3', 'CPLE6', 'TAEE11', 'CMIG4'] ranking_utilities = analisar_utilities(utilities, 'SEU_TOKEN') ``` ### Setor de Varejo #### Indicadores Específicos: ```python def analisar_varejo(tickers_varejo, token): """Análise específica para varejo""" resultados = [] for ticker in tickers_varejo: url = f"https://brapi.dev/api/quote/{ticker}?modules=defaultKeyStatistics,financialData&token={token}" response = requests.get(url) data = response.json() acao = data['results'][0] stats = acao.get('defaultKeyStatistics', {}) financials = acao.get('financialData', {}) analise = { 'ticker': ticker, 'nome': acao['shortName'], 'p_l': stats.get('forwardPE', 0), 'p_vendas': stats.get('priceToSalesTrailing12Months', 0), 'margem_liquida': financials.get('profitMargins', 0) * 100, 'roe': financials.get('returnOnEquity', 0) * 100, 'crescimento_receita': calcular_crescimento_receita(ticker, token), 'liquidez_corrente': financials.get('currentRatio', 0), 'endividamento': calcular_endividamento(ticker, token) } resultados.append(analise) return sorted(resultados, key=lambda x: x['roe'], reverse=True) varejo = ['MGLU3', 'LREN3', 'AMER3', 'GUAR3', 'SOMA3'] ranking_varejo = analisar_varejo(varejo, 'SEU_TOKEN') ``` ## Dashboard Setorial Interativo ### Implementação em React ```jsx import React, { useState, useEffect } from 'react'; import { BarChart, Bar, XAxis, YAxis, CartesianGrid, Tooltip, Legend, ScatterChart, Scatter } from 'recharts'; const DashboardSetorial = () => { const [setorSelecionado, setSetorSelecionado] = useState('bancos'); const [dadosSetor, setDadosSetor] = useState([]); const [loading, setLoading] = useState(false); const setores = { bancos: { nome: 'Setor Bancário', tickers: ['ITUB4', 'BBDC4', 'BBAS3', 'SANB11', 'BPAC11'], metricas: ['roe', 'p_vp', 'dividend_yield'], cor: '#3498db' }, utilities: { nome: 'Utilities', tickers: ['EGIE3', 'SBSP3', 'CPLE6', 'TAEE11', 'CMIG4'], metricas: ['ev_ebitda', 'dividend_yield', 'margem_liquida'], cor: '#2ecc71' }, varejo: { nome: 'Varejo', tickers: ['MGLU3', 'LREN3', 'AMER3', 'GUAR3', 'SOMA3'], metricas: ['p_l', 'margem_liquida', 'crescimento_receita'], cor: '#e74c3c' } }; useEffect(() => { const buscarDadosSetor = async () => { setLoading(true); try { const setor = setores[setorSelecionado]; const dados = await analisarSetor(setor.tickers, setorSelecionado); setDadosSetor(dados); } catch (error) { console.error('Erro ao buscar dados do setor:', error); } finally { setLoading(false); } }; buscarDadosSetor(); }, [setorSelecionado]); const analisarSetor = async (tickers, tipoSetor) => { const resultados = []; for (const ticker of tickers) { try { const response = await fetch(`https://brapi.dev/api/quote/${ticker}?modules=defaultKeyStatistics,financialData&token=${process.env.REACT_APP_BRAPI_TOKEN}`); const data = await response.json(); const acao = data.results[0]; const stats = acao.defaultKeyStatistics || {}; const financials = acao.financialData || {}; const dadosComuns = { ticker: acao.symbol, nome: acao.shortName, preco: acao.regularMarketPrice, variacao: acao.regularMarketChangePercent }; // Métricas específicas por setor if (tipoSetor === 'bancos') { resultados.push({ ...dadosComuns, roe: (financials.returnOnEquity || 0) * 100, p_vp: stats.priceToBook || 0, dividend_yield: (stats.dividendYield || 0) * 100 }); } else if (tipoSetor === 'utilities') { resultados.push({ ...dadosComuns, ev_ebitda: stats.enterpriseToEbitda || 0, dividend_yield: (stats.dividendYield || 0) * 100, margem_liquida: (financials.profitMargins || 0) * 100 }); } else if (tipoSetor === 'varejo') { resultados.push({ ...dadosComuns, p_l: stats.forwardPE || 0, margem_liquida: (financials.profitMargins || 0) * 100, roe: (financials.returnOnEquity || 0) * 100 }); } } catch (error) { console.error(`Erro ao processar ${ticker}:`, error); } } return resultados; }; const renderGraficoComparativo = () => { if (!dadosSetor.length) return null; const setor = setores[setorSelecionado]; return ( ); }; const renderTabela = () => { if (!dadosSetor.length) return null; return (Comparação {setor.nome}
{/* Gráfico de barras para primeira métrica */}{/* Scatter plot para análise cruzada */}ROE / EV/EBITDA / P/L
Dividend Yield vs Margem Líquida
); }; return (Ranking Detalhado
{dadosSetor.map((empresa, index) => ( Posição Ticker Nome Preço Variação {setorSelecionado === 'bancos' && ( <>ROE (%) P/VP DY (%) > )} {setorSelecionado === 'utilities' && ( <>EV/EBITDA DY (%) Margem (%) > )} {setorSelecionado === 'varejo' && ( <>P/L ROE (%) Margem (%) > )}))} {index + 1} {empresa.ticker} {empresa.nome} R$ {empresa.preco.toFixed(2)} = 0 ? 'positivo' : 'negativo'}> {empresa.variacao >= 0 ? '+' : ''}{empresa.variacao.toFixed(2)}% {setorSelecionado === 'bancos' && ( <>{empresa.roe.toFixed(1)}% {empresa.p_vp.toFixed(2)} {empresa.dividend_yield.toFixed(1)}% > )} {setorSelecionado === 'utilities' && ( <>{empresa.ev_ebitda.toFixed(1)}x {empresa.dividend_yield.toFixed(1)}% {empresa.margem_liquida.toFixed(1)}% > )} {setorSelecionado === 'varejo' && ( <>{empresa.p_l.toFixed(1)}x {empresa.roe.toFixed(1)}% {empresa.margem_liquida.toFixed(1)}% > )}); }; export default DashboardSetorial; ``` ## Análise de Ciclos Setoriais ### Identificando Momentos de Entrada ```python def analisar_ciclo_setorial(setor_tickers, periodo_anos=5, token=''): """Analisa ciclos históricos de um setor""" import pandas as pd from datetime import datetime, timedelta # Buscar dados históricos dados_setor = [] for ticker in setor_tickers: url = f"https://brapi.dev/api/quote/{ticker}?range={periodo_anos}y&interval=1mo&token={token}" response = requests.get(url) data = response.json() historico = data['results'][0]['historicalDataPrice'] df = pd.DataFrame(historico) df['date'] = pd.to_datetime(df['date'], unit='s') df['ticker'] = ticker df['retorno_mensal'] = df['close'].pct_change() dados_setor.append(df) # Combinar dados do setor df_setor = pd.concat(dados_setor, ignore_index=True) # Calcular performance média mensal do setor performance_setor = df_setor.groupby('date')['retorno_mensal'].mean().reset_index() performance_setor['retorno_acumulado'] = (1 + performance_setor['retorno_mensal']).cumprod() # Identificar ciclos (períodos de alta/baixa) performance_setor['media_movel_12m'] = performance_setor['retorno_acumulado'].rolling(12).mean() performance_setor['ciclo'] = performance_setor['retorno_acumulado'] > performance_setor['media_movel_12m'] # Análise de sazonalidade performance_setor['mes'] = performance_setor['date'].dt.month sazonalidade = performance_setor.groupby('mes')['retorno_mensal'].mean() return { 'performance_historica': performance_setor, 'sazonalidade': sazonalidade, 'momento_atual': avaliar_momento_ciclo(performance_setor), 'melhores_meses': sazonalidade.nlargest(3).index.tolist(), 'piores_meses': sazonalidade.nsmallest(3).index.tolist() } def avaliar_momento_ciclo(df_performance): """Avalia em que momento do ciclo o setor se encontra""" ultimos_12m = df_performance.tail(12) performance_recente = ultimos_12m['retorno_mensal'].mean() if performance_recente > 0.02: # 2% ao mês return "Alta do ciclo - CUIDADO" elif performance_recente < -0.02: # -2% ao mês return "Baixa do ciclo - OPORTUNIDADE" else: return "Meio do ciclo - NEUTRO" # Exemplo de uso utilities_tickers = ['EGIE3', 'SBSP3', 'CPLE6', 'TAEE11'] analise_utilities = analisar_ciclo_setorial(utilities_tickers, 5, 'SEU_TOKEN') print(f"Momento atual do setor: {analise_utilities['momento_atual']}") print(f"Melhores meses historicamente: {analise_utilities['melhores_meses']}") ``` ## Estratégias de Pair Trading ### Identificando Pares para Trading ```python def identificar_pares_trading(setor_tickers, token): """Identifica oportunidades de pair trading no setor""" import numpy as np from scipy.stats import pearsonr # Buscar dados históricos de todas as ações dados_acoes = {} for ticker in setor_tickers: url = f"https://brapi.dev/api/quote/{ticker}?range=1y&interval=1d&token={token}" response = requests.get(url) data = response.json() historico = data['results'][0]['historicalDataPrice'] precos = [item['close'] for item in historico] dados_acoes[ticker] = np.array(precos) # Calcular correlações entre todos os pares pares_correlacao = [] tickers = list(dados_acoes.keys()) for i in range(len(tickers)): for j in range(i+1, len(tickers)): ticker1, ticker2 = tickers[i], tickers[j] # Garantir mesmo tamanho de arrays min_len = min(len(dados_acoes[ticker1]), len(dados_acoes[ticker2])) precos1 = dados_acoes[ticker1][-min_len:] precos2 = dados_acoes[ticker2][-min_len:] # Calcular correlação correlacao, p_value = pearsonr(precos1, precos2) # Calcular ratio atual ratio_atual = precos1[-1] / precos2[-1] ratio_historico = precos1 / precos2 ratio_media = np.mean(ratio_historico) ratio_std = np.std(ratio_historico) # Z-score do ratio atual z_score = (ratio_atual - ratio_media) / ratio_std pares_correlacao.append({ 'par': f"{ticker1}/{ticker2}", 'ticker1': ticker1, 'ticker2': ticker2, 'correlacao': correlacao, 'p_value': p_value, 'z_score': z_score, 'oportunidade': abs(z_score) > 2, # Divergência significativa 'sugestao': 'LONG ' + ticker1 + ' / SHORT ' + ticker2 if z_score < -2 else 'SHORT ' + ticker1 + ' / LONG ' + ticker2 if z_score > 2 else 'NEUTRO' }) # Filtrar pares com alta correlação e oportunidades pares_interessantes = [ par for par in pares_correlacao if par['correlacao'] > 0.7 and par['oportunidade'] and par['p_value'] < 0.05 ] return sorted(pares_interessantes, key=lambda x: abs(x['z_score']), reverse=True) # Exemplo para setor bancário bancos = ['ITUB4', 'BBDC4', 'BBAS3', 'SANB11'] oportunidades_pairs = identificar_pares_trading(bancos, 'SEU_TOKEN') print("🔄 OPORTUNIDADES PAIR TRADING") print("-" * 50) for par in oportunidades_pairs[:5]: print(f"Par: {par['par']}") print(f"Correlação: {par['correlacao']:.3f}") print(f"Z-Score: {par['z_score']:+.2f}") print(f"Sugestão: {par['sugestao']}") print("-" * 30) ``` ## Relatório Setorial Automatizado ### Gerador de Relatório Completo ```python def gerar_relatorio_setorial(setor_config, token): """Gera relatório completo de análise setorial""" from datetime import datetime relatorio = { 'setor': setor_config['nome'], 'data_analise': datetime.now().strftime('%d/%m/%Y %H:%M'), 'resumo_executivo': {}, 'ranking_empresas': [], 'analise_tecnica': {}, 'recomendacoes': [] } # Análise fundamentalista dados_fundamentais = analisar_fundamentos_setor(setor_config['tickers'], token) relatorio['ranking_empresas'] = dados_fundamentais # Líder do setor lider = dados_fundamentais[0] relatorio['resumo_executivo']['lider_setor'] = { 'ticker': lider['ticker'], 'nome': lider['nome'], 'motivo': 'Maior ROE e melhor eficiência operacional' } # Oportunidade de valor melhor_valor = min(dados_fundamentais, key=lambda x: x.get('p_l', float('inf'))) relatorio['resumo_executivo']['melhor_valor'] = { 'ticker': melhor_valor['ticker'], 'p_l': melhor_valor.get('p_l', 0), 'motivo': 'Menor múltiplo P/L do setor' } # Maior dividend yield melhor_dy = max(dados_fundamentais, key=lambda x: x.get('dividend_yield', 0)) relatorio['resumo_executivo']['melhor_dividendo'] = { 'ticker': melhor_dy['ticker'], 'dy': melhor_dy.get('dividend_yield', 0), 'motivo': 'Maior dividend yield do setor' } # Análise técnica do setor analise_tecnica = analisar_tendencia_setor(setor_config['tickers'], token) relatorio['analise_tecnica'] = analise_tecnica # Recomendações relatorio['recomendacoes'] = gerar_recomendacoes_setor(dados_fundamentais, analise_tecnica) return relatorio def formatar_relatorio_markdown(relatorio): """Converte relatório para formato Markdown""" md = f""" # Relatório Setorial: {relatorio['setor']} *Análise realizada em {relatorio['data_analise']}* ## 📊 Resumo Executivo ### 🏆 Líder do Setor **{relatorio['resumo_executivo']['lider_setor']['ticker']}** - {relatorio['resumo_executivo']['lider_setor']['nome']} *{relatorio['resumo_executivo']['lider_setor']['motivo']}* ### 💰 Melhor Valor **{relatorio['resumo_executivo']['melhor_valor']['ticker']}** (P/L: {relatorio['resumo_executivo']['melhor_valor']['p_l']:.1f}x) *{relatorio['resumo_executivo']['melhor_valor']['motivo']}* ### 🎯 Maior Dividend Yield **{relatorio['resumo_executivo']['melhor_dividendo']['ticker']}** ({relatorio['resumo_executivo']['melhor_dividendo']['dy']:.1f}%) *{relatorio['resumo_executivo']['melhor_dividendo']['motivo']}* ## 📈 Ranking de Empresas | Posição | Ticker | Nome | ROE | P/L | DY | Score | |---------|--------|------|-----|-----|----|----- | """ for i, empresa in enumerate(relatorio['ranking_empresas'][:10], 1): roe = empresa.get('roe', 0) pl = empresa.get('p_l', 0) dy = empresa.get('dividend_yield', 0) score = empresa.get('score', 0) md += f"| {i} | {empresa['ticker']} | {empresa['nome']} | {roe:.1f}% | {pl:.1f}x | {dy:.1f}% | {score:.1f} |\n" md += f""" ## 🔍 Análise Técnica do Setor **Tendência Geral:** {relatorio['analise_tecnica'].get('tendencia', 'Indefinida')} **Força da Tendência:** {relatorio['analise_tecnica'].get('forca', 'Moderada')} **Suporte:** R$ {relatorio['analise_tecnica'].get('suporte', 0):.2f} **Resistência:** R$ {relatorio['analise_tecnica'].get('resistencia', 0):.2f} ## 💡 Recomendações """ for recomendacao in relatorio['recomendacoes']: md += f"- **{recomendacao['tipo']}:** {recomendacao['descricao']}\n" md += """ --- *Relatório gerado automaticamente pela API brapi.dev* """ return md # Exemplo de uso setor_utilities = { 'nome': 'Utilities (Energia e Saneamento)', 'tickers': ['EGIE3', 'SBSP3', 'CPLE6', 'TAEE11', 'CMIG4'] } relatorio = gerar_relatorio_setorial(setor_utilities, 'SEU_TOKEN') markdown = formatar_relatorio_markdown(relatorio) # Salvar relatório with open(f"relatorio_utilities_{datetime.now().strftime('%Y%m%d')}.md", 'w', encoding='utf-8') as f: f.write(markdown) print("Relatório setorial gerado com sucesso!") ``` ## Conclusão A análise setorial é uma ferramenta poderosa para investidores que buscam identificar as melhores oportunidades dentro de cada segmento da economia. Ao comparar empresas do mesmo setor, é possível: ### Benefícios da Análise Setorial: 1. **Contexto Apropriado**: Múltiplos e indicadores ganham significado real 2. **Identificação de Líderes**: Encontrar empresas com vantagem competitiva 3. **Oportunidades Relativas**: Descobrir ações subvalorizadas 4. **Timing de Investimento**: Identificar momentos de entrada/saída ### Próximos Passos: * **Explore nossa [API completa](/docs)** para dados setoriais * **Use nossa [plataforma](/quotes)** para comparações interativas * **Implemente os códigos** apresentados neste guia * **Crie seus próprios dashboards** setoriais ### Recursos Adicionais: * **[Dados fundamentalistas](/docs/acoes)** detalhados por empresa * **[Histórico completo](/docs)** para análise de tendências * **[Exemplos de código](/docs/examples)** em múltiplas linguagens **Lembre-se**: A análise setorial deve ser combinada com análise macroeconômica e gestão adequada de risco. Diversifique sempre entre setores para reduzir riscos específicos! # Como Usar a API da B3 com Python: Guia Prático 2025 URL: /blog/api-b3-python-requests-guia-pratico.mdx Aprenda a integrar a API brapi.dev com Python usando requests. Exemplos práticos com classes, Pandas, Flask e exportação para CSV/Excel. *** searchable: true title: 'Como Usar a API da B3 com Python: Guia Prático 2025' description: 'Aprenda a integrar a API brapi.dev com Python usando requests. Exemplos práticos com classes, Pandas, Flask e exportação para CSV/Excel.' date: '2025-10-12' keywords: 'python api b3, requests python, cotações python, pandas b3, flask api, python stock market, brapi python' author: 'Equipe brapi.dev' category: 'Tutoriais e Integrações' subcategory: 'Desenvolvimento Python' readingTime: '8 min' tags: \['Python', 'API', 'Requests', 'Pandas', 'Flask', 'Automação'] relatedPosts: \['api-b3-typescript-javascript-integracao-completa', 'integracao-google-sheets-cotacoes-b3-tutorial-completo'] featured: false expertise: 'Desenvolvimento Python para análise financeira - 7+ anos' lastReviewed: '2025-10-12' -------------------------- import { Author, Authors } from '~/components/Authors'; # Como Integrar a API da B3 com Python > Guia completo para buscar cotações de ações, ETFs e outros ativos da B3 usando Python e a biblioteca requests.{loading ? (Análise Setorial - B3
{Object.entries(setores).map(([key, setor]) => ( ))}Carregando dados do setor...) : ( <> {renderGraficoComparativo()} {renderTabela()} > )}## Por Que Python para Análise Financeira? Python é a linguagem preferida para análise de dados e finanças por ser: * **Simples de aprender** - Sintaxe clara e intuitiva * **Poderosa** - Bibliotecas como Pandas, NumPy e Matplotlib * **Popular** - Grande comunidade e recursos * **Versátil** - Desde scripts até aplicações web ## Instalação ```bash pip install requests ``` ## Exemplo Básico ```python import requests token = 'SEU_TOKEN' ticker = 'PETR4' url = f'https://brapi.dev/api/quote/{ticker}?token={token}' response = requests.get(url) data = response.json() quote = data['results'][0] print(f"{quote['symbol']}: R$ {quote['regularMarketPrice']:.2f}") ``` ## Classe Cliente Profissional ```python import requests from typing import Dict, List, Optional from dataclasses import dataclass @dataclass class Quote: """Representa uma cotação de ativo""" symbol: str short_name: str regular_market_price: float regular_market_change_percent: float currency: str @classmethod def from_dict(cls, data: Dict) -> 'Quote': return cls( symbol=data['symbol'], short_name=data['shortName'], regular_market_price=data['regularMarketPrice'], regular_market_change_percent=data['regularMarketChangePercent'], currency=data['currency'] ) class BrapiClient: """Cliente para a API brapi.dev""" BASE_URL = 'https://brapi.dev/api' def __init__(self, token: str): self.token = token self.session = requests.Session() self.session.headers.update({ 'User-Agent': 'Python BrapiClient/1.0' }) def get_quote(self, ticker: str) -> Optional[Quote]: """Busca cotação de um ativo""" url = f'{self.BASE_URL}/quote/{ticker}' params = {'token': self.token} try: response = self.session.get(url, params=params, timeout=10) response.raise_for_status() data = response.json() if data.get('results'): return Quote.from_dict(data['results'][0]) return None except requests.exceptions.RequestException as e: print(f'Erro ao buscar {ticker}: {e}') return None def get_multiple_quotes(self, tickers: List[str]) -> List[Quote]: """Busca cotações de múltiplos ativos""" tickers_param = ','.join(tickers) url = f'{self.BASE_URL}/quote/{tickers_param}' params = {'token': self.token} try: response = self.session.get(url, params=params, timeout=10) response.raise_for_status() data = response.json() return [Quote.from_dict(item) for item in data.get('results', [])] except requests.exceptions.RequestException as e: print(f'Erro ao buscar cotações: {e}') return [] def __enter__(self): return self def __exit__(self, *args): self.session.close() # Uso with BrapiClient('SEU_TOKEN') as client: quote = client.get_quote('PETR4') if quote: print(f'{quote.symbol}: R$ {quote.regular_market_price:.2f}') ``` ## Integração com Pandas ```python import pandas as pd def get_quotes_dataframe(tickers: List[str], token: str) -> pd.DataFrame: """Retorna cotações como DataFrame""" with BrapiClient(token) as client: quotes = client.get_multiple_quotes(tickers) if not quotes: return pd.DataFrame() data = [{ 'symbol': q.symbol, 'name': q.short_name, 'price': q.regular_market_price, 'change_percent': q.regular_market_change_percent, 'currency': q.currency } for q in quotes] return pd.DataFrame(data) # Uso df = get_quotes_dataframe(['PETR4', 'VALE3', 'ITUB4'], 'SEU_TOKEN') print(df) # Salvar em Excel df.to_excel('cotacoes.xlsx', index=False) # Salvar em CSV df.to_csv('cotacoes.csv', index=False) ``` ## Análise de Dados ```python # Estatísticas básicas print(df['price'].describe()) # Filtrar ações com variação positiva df_positivas = df[df['change_percent'] > 0] # Ordenar por variação df_sorted = df.sort_values('change_percent', ascending=False) # Calcular média de preços media_preco = df['price'].mean() ``` ## Aplicação Flask ```python from flask import Flask, jsonify import os app = Flask(__name__) BRAPI_TOKEN = os.environ.get('BRAPI_TOKEN') @app.route('/api/quote/ ') def get_quote_api(ticker): """Endpoint para buscar cotação""" with BrapiClient(BRAPI_TOKEN) as client: quote = client.get_quote(ticker) if not quote: return jsonify({'error': 'Quote not found'}), 404 return jsonify({ 'symbol': quote.symbol, 'name': quote.short_name, 'price': quote.regular_market_price, 'change_percent': quote.regular_market_change_percent }) if __name__ == '__main__': app.run(debug=True) ``` ## Script de Monitoramento ```python import time from datetime import datetime def monitor_stocks(tickers: List[str], token: str, interval: int = 60): """Monitora ações em tempo real""" print(f"Monitorando {len(tickers)} ativos...") while True: with BrapiClient(token) as client: quotes = client.get_multiple_quotes(tickers) print(f"\n=== {datetime.now().strftime('%H:%M:%S')} ===") for quote in quotes: color = '\033[92m' if quote.regular_market_change_percent > 0 else '\033[91m' reset = '\033[0m' print(f"{quote.symbol}: R$ {quote.regular_market_price:.2f} " f"{color}{quote.regular_market_change_percent:+.2f}%{reset}") time.sleep(interval) # Uso monitor_stocks(['PETR4', 'VALE3', 'ITUB4'], 'SEU_TOKEN', interval=60) ``` ## Salvando Histórico em CSV ```python import csv from datetime import datetime def save_quotes_to_csv(tickers: List[str], token: str, filename: str): """Salva cotações em arquivo CSV""" with BrapiClient(token) as client: quotes = client.get_multiple_quotes(tickers) if not quotes: print('Nenhuma cotação obtida') return with open(filename, 'a', newline='', encoding='utf-8') as csvfile: fieldnames = ['timestamp', 'symbol', 'name', 'price', 'change_percent'] writer = csv.DictWriter(csvfile, fieldnames=fieldnames) # Escreve cabeçalho se arquivo estiver vazio if csvfile.tell() == 0: writer.writeheader() timestamp = datetime.now().isoformat() for quote in quotes: writer.writerow({ 'timestamp': timestamp, 'symbol': quote.symbol, 'name': quote.short_name, 'price': quote.regular_market_price, 'change_percent': quote.regular_market_change_percent }) print(f'Cotações salvas em {filename}') # Uso - executa diariamente save_quotes_to_csv(['PETR4', 'VALE3', 'ITUB4'], 'SEU_TOKEN', 'historico.csv') ``` ## Boas Práticas ### 1. Use Variáveis de Ambiente ```python import os from dotenv import load_dotenv load_dotenv() # Carrega .env token = os.environ.get('BRAPI_TOKEN') if not token: raise ValueError('BRAPI_TOKEN não configurado') ``` Arquivo `.env`: ``` BRAPI_TOKEN=seu_token_aqui ``` ### 2. Implemente Tratamento de Erros ```python try: quote = client.get_quote('PETR4') except requests.exceptions.Timeout: print('Timeout na requisição') except requests.exceptions.ConnectionError: print('Erro de conexão') except Exception as e: print(f'Erro inesperado: {e}') ``` ### 3. Use Context Managers ```python with BrapiClient(token) as client: # As conexões são fechadas automaticamente quote = client.get_quote('PETR4') ``` ## Próximos Passos * [Veja exemplos em outras linguagens](/docs/examples) * [Integre com Google Sheets](/docs/examples/google-sheets) * [Explore a documentação](/docs) ## Conclusão Python é uma excelente escolha para trabalhar com dados da B3. Com requests e Pandas, você pode criar análises poderosas, automações e até aplicações web completas. **Comece agora**: Copie o código acima e adapte para suas necessidades! # API B3 com TypeScript e JavaScript: Integração Completa 2025 URL: /blog/api-b3-typescript-javascript-integracao-completa.mdx Guia completo de integração da API brapi.dev com TypeScript e JavaScript. Exemplos práticos com fetch, Axios, Next.js e Node.js para buscar cotações da B3. *** searchable: true title: 'API B3 com TypeScript e JavaScript: Integração Completa 2025' description: 'Guia completo de integração da API brapi.dev com TypeScript e JavaScript. Exemplos práticos com fetch, Axios, Next.js e Node.js para buscar cotações da B3.' date: '2025-10-12' keywords: 'api b3 typescript, javascript cotações, fetch api, axios b3, next.js api, typescript stock api, brapi typescript' author: 'Equipe brapi.dev' category: 'Tutoriais e Integrações' subcategory: 'Desenvolvimento Web' readingTime: '10 min' tags: \['TypeScript', 'JavaScript', 'API', 'Next.js', 'Node.js', 'Desenvolvimento'] relatedPosts: \['como-usar-api-brapi-analise-acoes-guia-completo-desenvolvedores', 'integracao-google-sheets-cotacoes-b3-tutorial-completo'] featured: false expertise: 'Desenvolvimento web com TypeScript e Next.js - 8+ anos' lastReviewed: '2025-10-12' -------------------------- import { Author, Authors } from '~/components/Authors'; # Como Integrar a API da B3 com TypeScript e JavaScript > Aprenda a buscar cotações de ações, ETFs e outros ativos da B3 usando TypeScript e JavaScript em aplicações modernas. ## Por Que Integrar Dados da B3 em Sua Aplicação? Aplicações financeiras, dashboards de investimentos e plataformas de análise precisam de dados confiáveis e atualizados do mercado brasileiro. A API da brapi.dev oferece acesso simples e direto a: * Cotações em tempo real (plano pago) ou com delay de 15 min (gratuito) * Dados de ações, ETFs, FIIs, BDRs e criptomoedas * Informações fundamentalistas * Histórico de preços * Dividendos e proventos ## Começando: Fetch Nativo (Browser e Node.js 18+) O fetch é nativo em navegadores modernos e Node.js 18+, sem necessidade de bibliotecas extras. ### Exemplo Básico ```typescript const fetchQuote = async (ticker: string) => { const token = process.env.BRAPI_TOKEN; const response = await fetch( `https://brapi.dev/api/quote/${ticker}?token=${token}` ); const data = await response.json(); return data; }; // Uso fetchQuote('PETR4').then(data => { console.log(data.results[0]); }); ``` ### Com TypeScript e Tratamento de Erros ```typescript interface Quote { symbol: string; shortName: string; regularMarketPrice: number; regularMarketChange: number; regularMarketChangePercent: number; currency: string; } interface QuoteResponse { results: Quote[]; requestedAt: string; took: string; } async function getQuote(ticker: string): Promise { const token = process.env.BRAPI_TOKEN; try { const response = await fetch( `https://brapi.dev/api/quote/${ticker}?token=${token}` ); if (!response.ok) { throw new Error(`HTTP ${response.status}: ${response.statusText}`); } const data: QuoteResponse = await response.json(); return data.results[0] || null; } catch (error) { console.error('Erro ao buscar cotação:', error); return null; } } // Uso com tipos const quote = await getQuote('PETR4'); if (quote) { console.log(`${quote.symbol}: R$ ${quote.regularMarketPrice.toFixed(2)}`); console.log(`Variação: ${quote.regularMarketChangePercent.toFixed(2)}%`); } ``` ### Buscando Múltiplos Tickers ```typescript async function getMultipleQuotes(tickers: string[]): Promise{ const token = process.env.BRAPI_TOKEN; const tickersParam = tickers.join(','); const response = await fetch( `https://brapi.dev/api/quote/${tickersParam}?token=${token}` ); const data: QuoteResponse = await response.json(); return data.results; } // Uso const quotes = await getMultipleQuotes(['PETR4', 'VALE3', 'ITUB4']); quotes.forEach(quote => { console.log(`${quote.symbol}: R$ ${quote.regularMarketPrice}`); }); ``` ## Usando Axios para Mais Recursos Axios oferece sintaxe mais simples, interceptors e melhor tratamento de erros. ### Instalação ```bash npm install axios # ou yarn add axios # ou bun add axios ``` ### Cliente Básico com Axios ```typescript import axios from 'axios'; const brapiClient = axios.create({ baseURL: 'https://brapi.dev/api', params: { token: process.env.BRAPI_TOKEN } }); // Buscar cotação const { data } = await brapiClient.get(`/quote/PETR4`); console.log(data.results[0]); ``` ### Classe Cliente Profissional ```typescript import axios, { AxiosInstance, AxiosError } from 'axios'; class BrapiClient { private client: AxiosInstance; constructor(token: string) { this.client = axios.create({ baseURL: 'https://brapi.dev/api', timeout: 10000, params: { token } }); } async getQuote(ticker: string): Promise{ try { const { data } = await this.client.get(`/quote/${ticker}`); return data.results[0]; } catch (error) { if (axios.isAxiosError(error)) { throw new Error(`API Error: ${error.response?.status} - ${error.message}`); } throw error; } } async getMultipleQuotes(tickers: string[]): Promise { const tickersParam = tickers.join(','); const { data } = await this.client.get(`/quote/${tickersParam}`); return data.results; } } // Uso const brapi = new BrapiClient(process.env.BRAPI_TOKEN!); const quote = await brapi.getQuote('PETR4'); ``` ## Integração com Next.js ### Server Component (Recomendado) ```typescript // app/stock/[ticker]/page.tsx interface PageProps { params: { ticker: string }; } async function getQuote(ticker: string) { const token = process.env.BRAPI_TOKEN; const res = await fetch( `https://brapi.dev/api/quote/${ticker}?token=${token}`, { next: { revalidate: 60 } } // Cache por 60 segundos ); if (!res.ok) throw new Error('Failed to fetch'); return res.json(); } export default async function StockPage({ params }: PageProps) { const data = await getQuote(params.ticker); const quote = data.results[0]; return ( ); } ``` ### API Route ```typescript // app/api/quote/[ticker]/route.ts import { NextResponse } from 'next/server'; export async function GET( request: Request, { params }: { params: { ticker: string } } ) { const token = process.env.BRAPI_TOKEN; try { const response = await fetch( `https://brapi.dev/api/quote/${params.ticker}?token=${token}` ); if (!response.ok) { return NextResponse.json( { error: 'Failed to fetch quote' }, { status: response.status } ); } const data = await response.json(); return NextResponse.json(data); } catch (error) { return NextResponse.json( { error: 'Internal server error' }, { status: 500 } ); } } ``` ### Client Component com SWR ```typescript 'use client'; import useSWR from 'swr'; const fetcher = (url: string) => fetch(url).then(r => r.json()); export function StockQuote({ ticker }: { ticker: string }) { const { data, error, isLoading } = useSWR( `/api/quote/${ticker}`, fetcher, { refreshInterval: 60000 } // Atualiza a cada 60s ); if (error) return{quote.shortName}
R$ {quote.regularMarketPrice.toFixed(2)}
0 ? 'text-green-600' : 'text-red-600'}> {quote.regularMarketChangePercent.toFixed(2)}%
Erro ao carregar; if (isLoading) returnCarregando...; const quote = data.results[0]; return (); } ``` ## Node.js com Cache ```typescript class BrapiService { private cache = new Map{quote.symbol}
R$ {quote.regularMarketPrice.toFixed(2)}
(); private cacheDuration = 60000; // 60 segundos constructor(private token: string) {} async getQuote(ticker: string): Promise { const cached = this.cache.get(ticker); const now = Date.now(); // Retorna do cache se ainda válido if (cached && now - cached.timestamp < this.cacheDuration) { return cached.data; } // Busca novo dado const response = await fetch( `https://brapi.dev/api/quote/${ticker}?token=${this.token}` ); const data = await response.json(); const quote = data.results[0]; // Atualiza cache this.cache.set(ticker, { data: quote, timestamp: now }); return quote; } } // Uso const service = new BrapiService(process.env.BRAPI_TOKEN!); const quote = await service.getQuote('PETR4'); ``` ## Boas Práticas ### 1. Armazene o Token em Variáveis de Ambiente ```bash # .env.local BRAPI_TOKEN=seu_token_aqui ``` ```typescript // Nunca faça isso const token = 'meu_token_secreto'; // ❌ Inseguro! // Faça isso const token = process.env.BRAPI_TOKEN; // ✅ Seguro ``` ### 2. Implemente Cache ```typescript // Next.js App Router fetch(url, { next: { revalidate: 60 } }) // Next.js Pages Router export async function getStaticProps() { return { props: { data }, revalidate: 60 // Revalida a cada 60s } } ``` ### 3. Trate Erros Adequadamente ```typescript try { const quote = await getQuote('PETR4'); } catch (error) { if (error instanceof Error) { console.error('Erro:', error.message); } } ``` ### 4. Use TypeScript para Segurança de Tipos ```typescript // Define interfaces para os dados interface Quote { symbol: string; regularMarketPrice: number; // ... outros campos } // TypeScript vai alertar sobre erros const price: number = quote.regularMarketPrice; // ✅ const invalid: string = quote.regularMarketPrice; // ❌ Erro de tipo ``` ## Exemplo Completo: Dashboard de Ações ```typescript // components/StockDashboard.tsx 'use client'; import { useEffect, useState } from 'react'; interface Quote { symbol: string; shortName: string; regularMarketPrice: number; regularMarketChangePercent: number; } export function StockDashboard() { const [quotes, setQuotes] = useState([]); const [loading, setLoading] = useState(true); useEffect(() => { async function loadQuotes() { const tickers = ['PETR4', 'VALE3', 'ITUB4', 'BBDC4']; const response = await fetch(`/api/quotes?tickers=${tickers.join(',')}`); const data = await response.json(); setQuotes(data.results); setLoading(false); } loadQuotes(); const interval = setInterval(loadQuotes, 60000); // Atualiza a cada minuto return () => clearInterval(interval); }, []); if (loading) returnCarregando...; return ({quotes.map(quote => (); } ``` ## Próximos Passos * [Veja exemplos em Python](/docs/examples/python) * [Integre com Google Sheets](/docs/examples/google-sheets) * [Explore a documentação completa](/docs) * [Acesse seu dashboard](/dashboard) ## Conclusão A integração da API da brapi.dev com TypeScript e JavaScript é simples e poderosa. Com apenas algumas linhas de código, você tem acesso a dados completos do mercado brasileiro para criar aplicações financeiras profissionais. **Comece agora**: Copie os exemplos acima e adapte para seu projeto! # Balanço Patrimonial 2025: Como Extrair e Analisar Dados via API URL: /blog/balanco-patrimonial-acoes.mdx Domine análise de balanço patrimonial! Tutorial completo: extrair dados via API brapi, analisar ativos/passivos e implementar em Python/JavaScript ✓ *** searchable: true title: 'Balanço Patrimonial 2025: Como Extrair e Analisar Dados via API' description: 'Domine análise de balanço patrimonial! Tutorial completo: extrair dados via API brapi, analisar ativos/passivos e implementar em Python/JavaScript ✓' date: '2025-08-22' keywords: 'balanço patrimonial, API brapi, Python JavaScript, ativos passivos, patrimônio líquido, análise financeira, IBovespa, B3, dados financeiros, brapi' author: 'Equipe brapi.dev' category: 'Análise Financeira e APIs' subcategory: 'Tutoriais Técnicos' readingTime: '19 min' tags: \['Balanço Patrimonial', 'API', 'Python', 'JavaScript', 'B3', 'Análise Financeira', 'Tutorial'] relatedPosts: \['demonstrativos-financeiros-um-olhar-detalhado-na-saude-financeira-da-empresa', 'como-usar-api-brapi-analise-acoes-guia-completo-desenvolvedores', 'analise-financeira-com-modulo-balance-sheet-history'] featured: true expertise: 'Análise de balanços e desenvolvimento de APIs financeiras com 8+ anos de experiência' lastReviewed: '2025-08-22' -------------------------- import { Author, Authors } from '~/components/Authors'; # Guia para Extrair Dados de Balanço Patrimonial da IBovespa Usando API (Python e JS) > Desvende o mundo da análise financeira das empresas listadas na IBovespa com a > API brapi. Este guia detalhado é o seu aliado para desvendar ativos, passivos > e patrimônio líquido, um recurso indispensável para investidores decidirem com > sabedoria.))}{quote.symbol}
{quote.shortName}
R$ {quote.regularMarketPrice.toFixed(2)}
0 ? 'text-green-600' : 'text-red-600'}> {quote.regularMarketChangePercent > 0 ? '+' : ''} {quote.regularMarketChangePercent.toFixed(2)}%
*** ## Comece Aqui Quer ir direto ao que interessa? [Clique aqui](#implementando-o-balancesheethistory) e confira o código. O entendimento da saúde financeira das empresas é vital para investidores. Neste guia, não só explicaremos a importância dessa análise, mas também como usar o módulo `balanceSheetHistory` da API brapi, que fornece dados financeiros do mercado brasileiro. ### A Importância da Análise Financeira Fazer escolhas de investimento inteligentes passa por entender a condição financeira das empresas. Este guia sublinha a importância desta prática no ambiente econômico de hoje. ### Módulo em Foco O `balanceSheetHistory` é uma ferramenta poderosa dentro da API brapi para análise financeira. Aqui, você vai encontrar tudo sobre sua Documentação da API brapi e como usá-la para acessar dados históricos de ativos, passivos e patrimônio líquido, essenciais para quem investe. Esses são os dados que a API da brapi fornece para o módulo `balanceSheetHistory`: | Campo | Tradução | Descrição | | ---------------------------- | ------------------------------- | ------------------------------------------------------------------------------- | | endDate | Data de encerramento | A data em que o balanço patrimonial foi encerrado. | | cash | Caixa e equivalentes | Quantidade de dinheiro e equivalentes de caixa. | | shortTermInvestments | Investimentos a curto prazo | Investimentos que podem ser facilmente convertidos em dinheiro em curto prazo. | | netReceivables | Contas a receber | Valor total das vendas ou serviços que a empresa tem direito a receber. | | inventory | Estoques | Valor total dos bens mantidos para venda. | | otherCurrentAssets | Outros ativos circulantes | Outros ativos que podem ser convertidos em dinheiro dentro de um ano. | | totalCurrentAssets | Total de ativos circulantes | Soma de todos os ativos de curto prazo. | | longTermInvestments | Investimentos a longo prazo | Investimentos que não serão convertidos em dinheiro no curto prazo. | | propertyPlantEquipment | Imobilizado | Valor total dos ativos físicos a longo prazo, como edifícios e maquinários. | | goodWill | Goodwill | Valor contábil de uma empresa acima do valor de seus ativos tangíveis. | | intangibleAssets | Ativos intangíveis | Valor dos ativos que não têm presença física, como patentes. | | otherAssets | Outros ativos fixos | Ativos não circulantes que não se encaixam nas categorias anteriores. | | deferredLongTermAssetCharges | Ativos diferidos a longo prazo | Despesas pré-pagas que beneficiarão a empresa a longo prazo. | | totalAssets | Total de ativos | Soma total de todos os ativos da empresa. | | accountsPayable | Fornecedores | Dinheiro que a empresa deve a seus fornecedores por bens ou serviços recebidos. | | shortLongTermDebt | Dívidas a curto e longo prazo | Total de todas as dívidas, tanto de curto quanto de longo prazo. | | otherCurrentLiab | Outros passivos a curto prazo | Outros passivos que devem ser liquidados em um ano. | | longTermDebt | Dívidas a longo prazo | Dívidas que a empresa tem que não precisam ser pagas no próximo ano. | | otherLiab | Outros passivos a longo prazo | Outros passivos que não serão liquidados em um ano. | | minorityInterest | Participações minoritárias | Interesses de acionistas minoritários nos ativos líquidos da empresa. | | totalCurrentLiabilities | Total de passivos a curto prazo | Total dos passivos que a empresa precisa liquidar no próximo ano. | | totalLiab | Total de passivos | Total de todos os passivos da empresa. | | commonStock | Capital social | Valor do capital recebido pela empresa pela emissão de ações. | | retainedEarnings | Lucros acumulados | Lucros que a empresa reteve e não distribuiu como dividendos. | | treasuryStock | Ações em tesouraria | Ações que foram recompradas pela empresa e estão em seu poder. | | otherStockholderEquity | Outros patrimônios líquidos | Outros itens que contribuem para o patrimônio líquido total dos acionistas. | | totalStockholderEquity | Total do patrimônio líquido | Total do patrimônio dos acionistas, que é a diferença entre ativos e passivos. | | netTangibleAssets | Ativos tangíveis líquidos | Ativos tangíveis menos passivos e intangíveis como goodwill. | ### Propósito do Guia Este guia visa esclarecer o uso do `balanceSheetHistory` e da API brapi para análise financeira, incluindo dados de mercado, APIs B, WebServices da IBovespa e métodos como Web Scraping e Python. Ao terminar, você estará pronto para aplicar esses dados em decisões estratégicas de investimento. Vamos explorar o uso do módulo com exemplos práticos, fornecendo um guia completo para acessar e interpretar dados financeiros do mercado. ## Dominando o balanceSheetHistory Aqui, detalharemos o módulo `balanceSheetHistory`, mostrando sua funcionalidade e os dados que oferece. Além disso, daremos dicas de como navegar pelo módulo e usar essas informações a seu favor. ### O que o Módulo Faz O `balanceSheetHistory` é essencial para acessar dados financeiros das empresas na bolsa. Ele fornece detalhes sobre ativos, passivos e patrimônio líquido ao longo do tempo, ajudando investidores a fazer escolhas bem-informadas. A brapi entrega dados anuais em JSON, acessíveis através do endpoint `https://brapi.dev/api/quote/TICKER_DA_EMPRESA?token=SEU_TOKEN&modules=balanceSheetHistory`, substituindo TICKER\_DA\_EMPRESA e SEU\_TOKEN pelas informações corretas. ### Informações Disponibilizadas O módulo oferece uma série de dados financeiros, incluindo: * Data de encerramento * Caixa e equivalentes * Investimentos a curto prazo * Contas a receber * Estoques * Outros ativos circulantes * Total de ativos circulantes * Investimentos a longo prazo * Imobilizado * Goodwill * Ativos intangíveis * Outros ativos fixos * Ativos diferidos a longo prazo * Total de ativos * Fornecedores * Dívidas a curto e longo prazo * Outros passivos a curto prazo * Dívidas a longo prazo * Outros passivos a longo prazo * Participações minoritárias * Total de passivos a curto prazo * Total de passivos * Capital social * Lucros acumulados * Ações em tesouraria * Outros patrimônios líquidos * Total do patrimônio líquido * Ativos tangíveis líquidos ### Compreendendo os Dados Entender os termos como Ativos Circulantes, Ativos a Longo Prazo, Passivos a Curto Prazo, Passivos a Longo Prazo e Patrimônio Líquido é crucial. Cada um oferece uma visão da condição financeira da empresa, indo além de simples números. ### Navegando pelo Módulo Exploraremos como fazer solicitações usando JavaScript, Python e cURL, e também como interpretar as respostas do endpoint. No final deste segmento, você terá um entendimento claro do `balanceSheetHistory` e como usá-lo em análises financeiras. ## Implementando o balanceSheetHistory Vamos pôr a teoria em prática, mostrando como usar o `balanceSheetHistory` em diferentes linguagens de programação. Esta seção é dedicada a explicar como obter dados financeiros vitais através do módulo. ### Criando Sua Conta na brapi Criar uma conta é simples. Basta [clicar aqui](https://brapi.dev/dashboard) e seguir os passos. ### Gerando um Token de Acesso Com sua conta pronta, crie um token e copie-o. É simples e rápido. ### Requisições com JavaScript Aqui, mostramos como fazer uma requisição em JavaScript para o endpoint mencionado: ```javascript // Exemplo em JavaScript const url = 'https://brapi.dev/api/quote/PETR?token=SEU_TOKEN&modules=balanceSheetHistory'; fetch(url) .then((response) => response.json()) .then((data) => { // Trate os dados aqui console.log(data); }) .catch((error) => { console.error('Erro na requisição:', error); }); ``` ### Requisições com Python Para Python, o processo é igualmente direto: ```python # Exemplo em Python import requests url = 'https://brapi.dev/api/quote/PETR?token=SEU_TOKEN&modules=balanceSheetHistory' response = requests.get(url) data = response.json() # Trate os dados aqui print(data) ``` ### Usando cURL Para quem prefere a linha de comando, segue um exemplo com cURL: ```bash # Exemplo com cURL curl 'https://brapi.dev/api/quote/PETR?token=SEU_TOKEN&modules=balanceSheetHistory' ``` ### Análise da Resposta Ao solicitar dados do endpoint, você receberá um JSON com as informações. A seguir, um exemplo de resposta com dados da Petrobras (PETR4): *Resposta do endpoint:* ```json { // ... outros dados "balanceSheetHistory": { "balanceSheetStatements": [ { "endDate": "2022-12-31T00:00:00.000Z", // Data de encerramento "cash": 41723000000, // Caixa "shortTermInvestments": 14470000000, // Investimentos de curto prazo "netReceivables": 32961000000, // Contas a receber "inventory": 45804000000, // Inventário "otherCurrentAssets": 28094000000, // Outros ativos circulantes "totalCurrentAssets": 163052000000, // Total de ativos circulantes "longTermInvestments": 16331000000, // Investimentos de longo prazo "propertyPlantEquipment": 679182000000, // Propriedade, planta e equipamentos "goodWill": 123000000, // Goodwill "intangibleAssets": 15458000000, // Ativos intangíveis "otherAssets": 102563000000, // Outros ativos "deferredLongTermAssetCharges": 4342000000, // Ativos diferidos de longo prazo "totalAssets": 976709000000, // Total de ativos "accountsPayable": 28507000000, // Contas a pagar "shortLongTermDebt": 18656000000, // Dívida de curto e longo prazo "otherCurrentLiab": 60989000000, // Outros passivos circulantes "longTermDebt": 137630000000, // Dívida de longo prazo "otherLiab": 215540000000, // Outros passivos "minorityInterest": 1791000000, // Participação minoritária "totalCurrentLiabilities": 163731000000, // Total de passivos circulantes "totalLiab": 612324000000, // Total de passivos "commonStock": 205432000000, // Ações ordinárias "retainedEarnings": 128562000000, // Lucros retidos "treasuryStock": 28600000000, // Ações em tesouraria "otherStockholderEquity": 28600000000, // Outros patrimônios dos acionistas "totalStockholderEquity": 362594000000, // Total do patrimônio dos acionistas "netTangibleAssets": 347013000000 // Ativos tangíveis } // + outros anos ou trimestres ] } } ``` ## Análise dos Dados de Balanço Compreender os dados do balanço é vital para analisar a saúde financeira de uma empresa. Discutiremos cada elemento chave do balanço, oferecendo insights para decisões de investimento. ### Ativos Circulantes Os ativos circulantes são a liquidez de curto prazo da empresa. A composição desses ativos, como dinheiro em caixa e estoques, revela a capacidade de cumprir obrigações imediatas. ### Ativos a Longo Prazo Os ativos a longo prazo são os investimentos que gerarão retorno futuro. Itens como imobilizado e investimentos de longo prazo são cruciais para o crescimento sustentável. ### Passivos Circulantes Os passivos circulantes são as dívidas e obrigações de curto prazo. Analisar estes dados ajuda a avaliar se a empresa pode enfrentar suas responsabilidades iminentes. ### Passivos a Longo Prazo Estudar os passivos a longo prazo, como empréstimos e outras dívidas, é essencial para entender a estratégia de financiamento da empresa e sua saúde financeira a longo prazo. ### Patrimônio Líquido O patrimônio líquido é o valor da empresa que pertence aos acionistas após quitar as dívidas. Analisar o capital social e os lucros acumulados mostra a solidez financeira e a gestão dos recursos. Entendendo esses conceitos, investidores podem fazer escolhas informadas, alinhando suas estratégias de investimento aos seus objetivos e tolerância ao risco. ## Perguntas Comuns ### Como Avaliar o Total de Ativos? Avaliar o total de ativos envolve entender a distribuição entre ativos correntes e fixos, e como esses valores evoluem ao longo do tempo. Compare também com empresas similares para uma análise contextual. ### O Que São Ativos Tangíveis Líquidos? Ativos Tangíveis Líquidos são ativos físicos menos as dívidas. Essa métrica ajuda a entender o valor real dos ativos que a empresa pode utilizar. ### Como Usar Estes Dados na Tomada de Decisões? Use os dados para apoiar decisões de investimento, observando não só os números, mas também tendências e comparações setoriais. Combine análises financeiras com avaliações qualitativas do mercado e da economia. Com estas informações, investidores e analistas podem extrair insights valiosos para decisões bem fundamentadas e alinhadas com metas de longo prazo. ### Avaliando a Liquidez e a Solvência A liquidez e a solvência são aspectos cruciais na análise financeira. A liquidez refere-se à capacidade da empresa de cumprir suas obrigações de curto prazo, enquanto a solvência é a capacidade de atender a compromissos de longo prazo. Ambas as métricas podem ser avaliadas através do balanço patrimonial, observando-se as razões entre ativos e passivos circulantes, bem como entre o patrimônio líquido e as dívidas de longo prazo. ### Rentabilidade e Eficiência Operacional Além dos elementos do balanço, é importante considerar a rentabilidade e a eficiência operacional da empresa. Isso inclui analisar a margem de lucro, o retorno sobre ativos (ROA) e o retorno sobre o patrimônio líquido (ROE). Esses indicadores dão uma ideia de quão bem a empresa está usando seus recursos para gerar lucro. ### Integração de Dados e Tendências Ao interpretar dados financeiros, é crucial não só olhar para os números absolutos, mas também para as tendências ao longo do tempo. Isso inclui mudanças nos níveis de dívida, crescimento dos ativos e evolução do patrimônio líquido. Também é importante integrar esses dados com informações de mercado, notícias e análises setoriais para obter uma visão mais completa. ## Conclusão O módulo `balanceSheetHistory` e a API brapi oferecem ferramentas valiosas para investidores e analistas financeiros buscarem dados relevantes de empresas listadas na Bovespa. Ao entender como acessar e interpretar esses dados, você pode fazer avaliações mais precisas da saúde financeira de uma empresa e tomar decisões de investimento com maior confiança. ### Continuando a Aprendizagem Este guia é apenas o começo. Investidores que buscam aprofundar seus conhecimentos devem continuar a explorar outras áreas da análise financeira, como a análise de fluxo de caixa, avaliação de riscos e estratégias de diversificação de portfólio. ### Mantendo-se Atualizado O mercado financeiro está em constante evolução, e a tecnologia continua a abrir novas portas para a análise de dados. Mantenha-se atualizado com as últimas tendências em ferramentas de análise financeira, regulamentações do mercado e mudanças econômicas que podem impactar suas estratégias de investimento. ### Construindo uma Rede de Recursos Por fim, construir uma rede de recursos confiáveis, incluindo plataformas de dados financeiros, consultorias especializadas e comunidades de investidores, pode ser um grande ativo. Compartilhar insights e estratégias com outros profissionais pode enriquecer sua compreensão do mercado e aprimorar suas habilidades de análise. Ao seguir estas orientações e utilizar as ferramentas disponíveis, você estará bem equipado para explorar o vasto universo dos dados financeiros e navegar no mercado de ações com maior segurança e eficácia. ### Aprofundando a Análise Setorial Para uma análise ainda mais precisa, é fundamental mergulhar nos detalhes setoriais. Cada indústria tem suas próprias métricas e fatores-chave de sucesso. Por exemplo, o setor de varejo pode ser intensamente analisado através do giro de estoque e da margem de lucro líquido, enquanto o setor financeiro pode ser mais bem compreendido por meio de indicadores como o índice de Basileia e a margem financeira. ### Explorando Dados Históricos e Projeções Futuras Os dados históricos fornecem um panorama do desempenho passado de uma empresa, mas é igualmente importante considerar as projeções futuras. Isso envolve analisar relatórios de analistas, projeções de mercado e estratégias empresariais anunciadas. Combinar dados retrospectivos com expectativas futuras pode ajudar a identificar empresas com potencial de crescimento a longo prazo. ### Técnicas Avançadas de Análise Investidores mais experientes podem se beneficiar da aplicação de técnicas avançadas como análise de regressão, modelagem preditiva e machine learning para antever tendências de mercado e comportamento de preços. Essas técnicas podem ser usadas para complementar a análise tradicional do balanço patrimonial, proporcionando uma vantagem competitiva no mercado. ### Diversificação e Gerenciamento de Risco A análise de balanço é um componente chave para construir um portfólio diversificado e gerenciar o risco. Investidores devem considerar como as informações obtidas se encaixam em uma estratégia de investimento mais ampla, levando em conta a correlação entre diferentes ativos e classes de ativos para mitigar a exposição a riscos específicos do mercado. ### A Importância da Educação Financeira Contínua A educação financeira é um processo contínuo. Participar de seminários, cursos e workshops pode ajudar a manter as habilidades afiadas e a compreensão atualizada. Além disso, seguir publicações financeiras respeitadas e manter-se informado sobre as últimas notícias pode ajudar a interpretar melhor os dados e fazer escolhas de investimento mais informadas. ### Utilizando Ferramentas e Recursos Ferramentas e plataformas online, como a brapi, são recursos valiosos que oferecem acesso a uma ampla gama de dados financeiros. Ferramentas de visualização de dados e plataformas de análise técnica também podem oferecer insights adicionais e facilitar a interpretação de dados complexos. ### Envolvimento na Comunidade Conectar-se com outros investidores e profissionais do mercado pode ser extremamente benéfico. Fóruns online, grupos de investimento e redes sociais oferecem oportunidades para discutir estratégias, trocar ideias e obter novos pontos de vista sobre o mercado. ### Conclusão Ao adotar uma abordagem holística para a análise financeira, que combina os dados do balanço patrimonial com um entendimento mais profundo do ambiente de mercado e técnicas analíticas avançadas, você pode tomar decisões de investimento com um grau de confiança e conhecimento que vai muito além dos números básicos. Lembre-se de que no mundo das finanças, o aprendizado nunca termina e estar bem informado é a chave para o sucesso a longo prazo. # Calculadora de Dividendos 2025: Simule sua Renda Passiva no Brasil URL: /blog/calculadora-dividendos-renda-passiva-brasil.mdx Use nossa Calculadora de Dividendos interativa para simular renda passiva com ações, FIIs e renda fixa em 2025. Gráficos em tempo real e estratégias atualizadas para o mercado brasileiro. *** searchable: true title: 'Calculadora de Dividendos 2025: Simule sua Renda Passiva no Brasil' description: 'Use nossa Calculadora de Dividendos interativa para simular renda passiva com ações, FIIs e renda fixa em 2025. Gráficos em tempo real e estratégias atualizadas para o mercado brasileiro.' date: '2025-08-22' keywords: 'calculadora dividendos Brasil 2025, renda passiva, FII simulador, ações dividendos, rentabilidade simulador, investimentos Brasil, gráficos interativos' author: 'Equipe brapi.dev' category: 'Renda Passiva' subcategory: 'Calculadora de Dividendos' readingTime: '16 min' tags: \['Dividendos', 'Renda Passiva', 'Calculadora', 'FIIs', 'Ações', 'Simulador', 'Brasil', 'Investimentos'] relatedPosts: \['dividend-yield-dy-como-calcular-usar-analise-acoes-dividendos', 'fundos-imobiliarios-fiis-guia-completo-investir-renda-passiva', 'metodo-bazin-estrategia-renda-passiva-acoes-dividendos'] featured: true expertise: 'Especialistas em estratégias de renda passiva com foco no mercado brasileiro e maximização de fluxo de dividendos' lastReviewed: '2025-08-22' -------------------------- import { Authors, Author } from '~/components/Authors'; # Calculadora de Dividendos 2025: Simule sua Renda Passiva no Brasil > **Construa sua máquina de renda passiva em 2025!** Descubra como criar um fluxo de dividendos sólido e crescente no mercado brasileiro. Nossa Calculadora de Dividendos oferece simulações interativas com ações, FIIs e renda fixa, mostrando gráficos em tempo real da evolução do seu patrimônio e fluxo mensal de dividendos. ## O que é a Calculadora de Dividendos? Nossa [Calculadora de Dividendos](/calculadoras/simulador-de-rentabilidade-e-dividendos) é uma ferramenta completa para simular a construção de renda passiva no mercado brasileiro. Ela permite comparar diferentes tipos de ativos (ações, FIIs, renda fixa) e visualizar como seu patrimônio e fluxo de dividendos evoluem ao longo do tempo. ### Recursos Únicos da Calculadora **🎯 Simulação Multi-Ativos** * **Ações**: Dividendos trimestrais/anuais com reinvestimento * **Fundos Imobiliários (FIIs)**: Dividendos mensais consistentes * **Renda Fixa**: Juros compostos com diferentes frequências * **Comparação lado a lado**: Veja diferenças de performance entre ativos **📊 Gráficos Interativos Avançados** * **Crescimento patrimonial**: Visualize a evolução total dos investimentos * **Fluxo de dividendos**: Acompanhe a renda passiva mensal/anual * **Tooltips informativos**: Valores exatos em qualquer ponto temporal * **Atualização em tempo real**: Modifique parâmetros e veja mudanças instantâneas **💡 Análise Brasileira Especializada** * **Tributação real**: Considera IR sobre dividendos de FIIs * **Inflação incorporada**: Rentabilidade real ajustada pelo IPCA * **Sazonalidade**: Considera padrões de distribuição brasileiros ## Como Funciona o Mercado de Dividendos no Brasil ### Dividendos de Ações Brasileiras **Características únicas:** * **Isenção de IR**: Dividendos de ações são isentos para pessoa física * **Frequência variável**: Algumas empresas pagam trimestral, outras anual * **Dividend yield médio**: 4-8% ao ano nas melhores pagadoras * **Sazonalidade**: Picos em março (resultados anuais) e setembro **Melhores setores para dividendos:** * **Bancos**: Itaú (ITUB4), Bradesco (BBDC4), Santander (SANB11) * **Utilities**: Engie (EGIE3), Copel (CPLE6), Cemig (CMIG4) * **Telecomunicações**: Telefônica (VIVT3), TIM (TIMS3) ### Fundos Imobiliários (FIIs) **Vantagens específicas:** * **Distribuição obrigatória**: 95% do resultado deve ser distribuído * **Frequência mensal**: Previsibilidade de renda superior às ações * **Dividend yield alto**: 6-12% ao ano nos melhores fundos * **Diversificação**: Exposição ao mercado imobiliário sem comprar imóveis **Tributação:** * **15% de IR**: Sobre dividendos para pessoas físicas * **Isenção para cotistas pequenos**: Menos de 10% do fundo **Categorias principais:** * **Shoppings**: HGLG11, XPLG11, MXRF11 * **Logística**: HFOF11, XPML11, VILG11 * **Corporativo**: HGCR11, XPCM11, BTLG11 ### Renda Fixa Brasileira **Opções para renda passiva:** * **Tesouro IPCA plus**: Proteção total contra inflação * **CDBs de bancos médios**: Yields superiores aos grandes bancos * **Debêntures incentivadas**: Isenção de IR com yields atrativas * **CRIs e CRAs**: Exposure imobiliário e agronegócio com isenção ## Estratégias de Construção de Renda Passiva ### Estratégia 1: Portfolio Balanceado (Iniciante) **Alocação sugerida:** * **40%** Ações pagadoras de dividendos * **40%** FIIs diversificados * **20%** Renda fixa (IPCA plus, CDBs) **Características:** * **Dividend yield esperado**: 6-8% ao ano * **Risco**: Moderado * **Complexidade**: Baixa * **Tempo de dedicação**: 2-4 horas/mês **Exemplo prático com R$ 500.000:** * R$ 200.000 em ações (ITUB4, VIVT3, EGIE3) * R$ 200.000 em FIIs (HGLG11, HFOF11, XPCM11) * R$ 100.000 em Tesouro IPCA plus 2029 **Renda passiva esperada**: R$ 2.500-3.500/mês ### Estratégia 2: Foco em FIIs (Renda Mensal) **Alocação sugerida:** * **70%** FIIs de diferentes setores * **20%** Ações de bancos e utilities * **10%** Reserva de oportunidade **Características:** * **Dividend yield esperado**: 8-10% ao ano * **Risco**: Moderado-alto * **Previsibilidade**: Alta (renda mensal) * **Tributação**: 15% IR sobre FIIs **Seleção de FIIs por setor:** * **Shoppings (30%)**: HGLG11, XPLG11 * **Logística (25%)**: HFOF11, XPML11 * **Corporativo (25%)**: HGCR11, XPCM11 * **Híbridos (20%)**: VISC11, BCFF11 **Renda passiva esperada**: R$ 3.000-4.500/mês para R$ 500.000 ### Estratégia 3: Aristocratas dos Dividendos (Crescimento) **Foco**: Empresas com histórico consistente de crescimento de dividendos **Seleção rigorosa:** * **Critério 1**: Crescimento de dividendos maior que 5% ao ano (últimos 10 anos) * **Critério 2**: Payout ratio menor que 60% (sustentabilidade) * **Critério 3**: ROE maior que 15% consistente * **Critério 4**: Dívida líquida/EBITDA menor que 3x **Empresas qualificadas:** * **ITUB4**: Crescimento médio de dividendos 8% ao ano * **VIVT3**: Yield alto e crescimento estável * **EGIE3**: Utility regulada com previsibilidade * **TAEE11**: Transmissão de energia, fluxo garantido ## Usando a Calculadora: Guia Passo a Passo ### Passo 1: Defina seu Perfil de Investimento **Parâmetros iniciais:** * **Investimento inicial**: Quanto tem disponível hoje * **Aporte mensal**: Quanto pode investir mensalmente * **Prazo**: Horizonte de investimento (recomendado: mais de 10 anos) * **Perfil de risco**: Conservador, moderado ou agressivo ### Passo 2: Configure os Tipos de Ativo **Para cada tipo de ativo, defina:** **Ações:** * **Rentabilidade anual**: 10-15% (apreciação + dividendos) * **Dividend yield**: 4-8% ao ano * **Frequência**: Trimestral ou anual * **Reinvestimento**: Sim (potencializa crescimento) **FIIs:** * **Rentabilidade anual**: 8-12% total * **Dividend yield**: 6-10% ao ano * **Frequência**: Mensal * **Tributação**: 15% IR sobre dividendos **Renda Fixa:** * **Rentabilidade anual**: IPCA mais 4-7% * **Dividend yield**: Same as rentabilidade * **Frequência**: Mensal, trimestral ou anual * **Tributação**: Tabela regressiva ou isenção ### Passo 3: Analise os Gráficos **Gráfico de Crescimento Patrimonial:** * **Linha azul**: Evolução total do patrimônio * **Área sombreada**: Contribuição dos aportes vs crescimento * **Projeções**: Visualize diferentes cenários **Gráfico de Fluxo de Dividendos:** * **Barras mensais/anuais**: Renda passiva recebida * **Crescimento exponencial**: Efeito do reinvestimento * **Marcos importantes**: Quando renda passiva > gastos ### Passo 4: Compare Cenários **Teste diferentes alocações:** * **100% ações** vs **100% FIIs** vs **100% renda fixa** * **Portfolio balanceado** vs **concentrado** * **Reinvestimento total** vs **retirada parcial** ## Exemplos Práticos de Simulação ### Exemplo 1: Jovem Profissional (28 anos) **Perfil:** * Investimento inicial: R$ 100.000 * Aporte mensal: R$ 3.000 * Estratégia: 50% ações, 30% FIIs, 20% renda fixa * Prazo: 20 anos **Parâmetros:** * **Ações**: 12% ao ano (6% dividendos + 6% apreciação) * **FIIs**: 9% ao ano (8% dividendos + 1% apreciação) * **Renda fixa**: 7% ao ano (IPCA mais 5%) **Resultados aos 20 anos:** * **Patrimônio total**: R$ 3.200.000 * **Renda passiva anual**: R$ 280.000 (R$ 23.300/mês) * **Contribuição dos aportes**: R$ 820.000 * **Crescimento por juros compostos**: R$ 2.380.000 ### Exemplo 2: Casal Planejando Aposentadoria (40 anos) **Perfil:** * Investimento inicial: R$ 800.000 * Aporte mensal: R$ 8.000 * Estratégia: 30% ações, 50% FIIs, 20% renda fixa * Prazo: 15 anos **Foco em renda mensal:** * **FIIs (R$ 400k + 50% aportes)**: Renda mensal consistente * **Ações (R$ 240k + 30% aportes)**: Crescimento de longo prazo * **Renda fixa (R$ 160k + 20% aportes)**: Estabilidade **Resultados aos 15 anos:** * **Patrimônio total**: R$ 4.800.000 * **Renda passiva mensal**: R$ 32.000 * **Substituição de renda**: Suficiente para aposentadoria confortável ### Exemplo 3: Executivo Focado em FIIs (45 anos) **Perfil:** * Investimento inicial: R$ 1.500.000 * Aporte mensal: R$ 15.000 * Estratégia: 80% FIIs, 20% ações * Prazo: 10 anos **Foco**: Maximizar renda passiva mensal **Seleção de FIIs:** * **HGLG11**: 25% (shoppings premium) * **HFOF11**: 25% (logística) * **XPCM11**: 20% (corporativo) * **VISC11**: 10% (híbrido) **Resultados aos 10 anos:** * **Patrimônio total**: R$ 5.200.000 * **Renda passiva mensal**: R$ 35.000 (líquida de IR) * **Yield on cost**: 12% (devido ao crescimento dos FIIs) ## Otimização Fiscal de Dividendos ### Estratégias de Eficiência Tributária **1. Maximizar Ações vs FIIs** * **Ações**: Dividendos isentos de IR * **FIIs**: 15% IR, mas dedutível em algumas situações * **Balanceamento**: Otimizar entre renda mensal (FIIs) e eficiência fiscal (ações) **2. Pessoa Física vs Jurídica** * **PF**: Dividendos de ações isentos, FIIs 15% * **PJ**: Tributação diferenciada, possível dedutibilidade * **Holding familiar**: Estrutura avançada para grandes patrimônios **3. Timing de Investimentos** * **Data ex-dividendo**: Comprar antes para receber dividendos * **Reinvestimento automático**: Evitar timing manual * **Rebalanceamento fiscal**: Usar perdas para compensar ganhos ### Planejamento Sucessório com Dividendos **Vantagens dos ativos geradores de renda:** * **Fluxo contínuo**: Herança que gera renda imediata * **Menor volatilidade**: Reduz riscos para herdeiros inexperientes * **Educação financeira**: Ensina próxima geração sobre investimentos ## Monitoramento e Ajustes da Carteira ### KPIs Essenciais para Acompanhar **1. Dividend Yield da Carteira** * **Cálculo**: Dividendos anuais / Patrimônio total * **Meta**: 6-10% dependendo da estratégia * **Frequência**: Trimestral **2. Crescimento dos Dividendos** * **Cálculo**: (Dividendos ano atual / Dividendos ano anterior) - 1 * **Meta**: Acima da inflação (IPCA mais 2%) * **Frequência**: Anual **3. Cobertura de Gastos** * **Cálculo**: Renda passiva mensal / Gastos mensais * **Meta FIRE**: maior que 100 por cento * **Frequência**: Mensal ### Sinais de Alerta **Revisar estratégia se:** * Dividend yield da carteira menor que 4% por 2 trimestres * Crescimento de dividendos menor que a inflação por 2 anos * Concentração maior que 30% em um único ativo * Redução de dividendos de mais de 20% dos ativos ## Ferramentas Complementares ### Use Junto com a Calculadora de Dividendos **1. [Calculadora FIRE Tradicional](/calculadoras/fire-tradicional)** * Veja quando dividendos cobrem 100% dos gastos * Planeje independência financeira completa **2. [Calculadora Lean FIRE](/calculadoras/lean-fire)** * Compare dividendos necessários para diferentes estilos de vida * Otimize tempo para independência **3. [Calculadora Fat FIRE](/calculadoras/fat-fire)** * Simule renda passiva para alto padrão de vida * Planeje margem de segurança robusta ### Plataformas e Ferramentas Profissionais **Análise de FIIs:** * **FundsExplorer**: Análise detalhada de todos os FIIs * **Suno Research**: Relatórios e recomendações * **FII Analytics**: Métricas avançadas e comparações **Análise de Ações:** * **Status Invest**: Fundamentalista gratuito * **Economática**: Análise profissional * **Bloomberg/Reuters**: Dados internacionais ## Perguntas Frequentes sobre Dividendos ### Qual é o melhor dividend yield para buscar no Brasil? **Resposta:** Para ações, 4-8% é saudável. Yields acima de 10% podem indicar problemas na empresa. Para FIIs, 6-12% é normal, mas analise a sustentabilidade. Use nossa calculadora para simular diferentes yields e ver o impacto no longo prazo. ### Devo reinvestir todos os dividendos ou começar a gastar? **Resposta:** Depende do seu objetivo. Na fase de acumulação (pré-FIRE), reinvista 100% para acelerar crescimento. Nossa calculadora mostra a diferença: reinvestimento pode dobrar seu patrimônio em 20 anos vs receber os dividendos. ### FIIs são melhores que ações para renda passiva? **Resposta:** FIIs oferecem renda mensal mais previsível, mas têm IR de 15%. Ações têm dividendos isentos mas menos frequentes. Uma combinação 50/50 geralmente oferece o melhor equilíbrio. Compare na calculadora! ### Como proteger dividendos da inflação? **Resposta:** Prefira empresas com pricing power (utilities, bancos) e FIIs com contratos indexados ao IPCA. Nossa calculadora inclui correção inflacionária para mostrar retornos reais. ### Qual o mínimo para começar a viver de dividendos? **Resposta:** Depende do seu padrão de vida. Para R$ 5.000/mês, precisaria de R$ 600.000-1.000.000 investidos com yield de 6-10%. Use nossa calculadora para simular diferentes cenários baseados nos seus gastos. ### Como diversificar geograficamente os dividendos? **Resposta:** REITs americanos, dividendos globais via ETFs, BDRs de empresas pagadoras. Limite: 20-30% internacional devido à tributação. Nossa calculadora foca no mercado brasileiro, mas você pode simular cenários mistos. ## Conclusão: Construa sua Renda Passiva com Inteligência A construção de renda passiva através de dividendos é uma das estratégias mais sólidas para alcançar independência financeira no Brasil. Com nossa [Calculadora de Dividendos](/calculadoras/simulador-de-rentabilidade-e-dividendos), você pode: **✅ Simular diferentes estratégias** de alocação entre ações, FIIs e renda fixa **✅ Visualizar crescimento** patrimonial e fluxo de dividendos em tempo real **✅ Comparar cenários** de reinvestimento vs retirada de dividendos **✅ Planejar independência financeira** baseada em renda passiva **Vantagens dos dividendos no Brasil:** * **Ações**: Dividendos isentos de IR para pessoa física * **FIIs**: Renda mensal previsível e diversificação imobiliária * **Mercado maduro**: Empresas com histórico sólido de distribuição * **Regulamentação favorável**: Proteção aos investidores **Estratégias para maximizar resultados:** * **Diversificação**: Combine ações, FIIs e renda fixa * **Reinvestimento**: Potencialize juros compostos na fase de acumulação * **Monitoramento**: Acompanhe qualidade e crescimento dos dividendos * **Paciência**: Renda passiva sólida é construída ao longo de décadas Lembre-se: dividendos são o resultado de empresas lucrativas e bem geridas. Ao investir em pagadoras de dividendos, você se torna sócio de negócios que distribuem parte dos lucros regularmente. **[📊 Simule sua renda passiva agora →](/calculadoras/simulador-de-rentabilidade-e-dividendos)** Descubra quanto você pode ganhar de dividendos e quando alcançará sua independência financeira! # Calculadora Fat FIRE 2025: Independência Financeira com Alto Padrão no Brasil URL: /blog/calculadora-fat-fire-independencia-financeira-alto-padrao-brasil.mdx Aprenda como alcançar Fat FIRE no Brasil com nossa calculadora interativa 2025. Estratégias para manter alto padrão de vida na aposentadoria precoce com multiplicadores flexíveis e gráficos avançados. *** searchable: true title: 'Calculadora Fat FIRE 2025: Independência Financeira com Alto Padrão no Brasil' description: 'Aprenda como alcançar Fat FIRE no Brasil com nossa calculadora interativa 2025. Estratégias para manter alto padrão de vida na aposentadoria precoce com multiplicadores flexíveis e gráficos avançados.' date: '2025-08-22' keywords: 'Fat FIRE Brasil 2025, alta renda, independência financeira luxo, aposentadoria rica, calculadora Fat FIRE gratuita, alto padrão vida, gráficos interativos' author: 'Equipe brapi.dev' category: 'Independência Financeira' subcategory: 'Fat FIRE' readingTime: '14 min' tags: \['Fat FIRE', 'Alto Padrão', 'Independência Financeira', 'Calculadora', 'Aposentadoria Rica', 'Planejamento Financeiro', 'Brasil', 'Luxo'] relatedPosts: \['calculadora-fire-tradicional-regra-4-porcento-brasil', 'calculadora-lean-fire-independencia-financeira-minimalista-brasil', 'calculadoras-fire-independencia-financeira-brasil'] featured: true expertise: 'Especialistas em estratégias FIRE para alta renda com metodologias avançadas de acumulação patrimonial' lastReviewed: '2025-08-22' -------------------------- import { Authors, Author } from '~/components/Authors'; # Calculadora Fat FIRE 2025: Independência Financeira com Alto Padrão no Brasil > **Não abra mão do seu conforto na aposentadoria precoce!** Descubra como alcançar Fat FIRE no Brasil de 2025 mantendo ou elevando seu padrão de vida. Nossa Calculadora Fat FIRE oferece multiplicadores flexíveis de 25x a 50x suas despesas, garantindo máxima segurança e luxo na independência financeira. ## O que é Fat FIRE? Fat FIRE é a modalidade do movimento FIRE voltada para pessoas que desejam manter ou até elevar seu padrão de vida durante a aposentadoria precoce. Diferente do FIRE tradicional (25x despesas) ou Lean FIRE (20x despesas), o Fat FIRE utiliza multiplicadores entre 25x e 50x, oferecendo margem de segurança substancial e flexibilidade para gastos extraordinários. ### Características do Fat FIRE **Vantagens:** * **Margem de segurança elevada**: Proteção contra crises e imprevistos * **Flexibilidade de gastos**: Capacidade de aumentar despesas sem comprometer a estratégia * **Estilo de vida preservado**: Manutenção ou melhoria do padrão atual * **Legado familiar**: Possibilidade de deixar herança significativa **Desafios:** * **Meta mais alta**: Requer mais tempo ou aportes maiores * **Disciplina prolongada**: Período de acumulação mais longo * **Renda elevada necessária**: Geralmente requer altos salários ou negócios próprios ## Como Funciona Nossa Calculadora Fat FIRE Nossa [Calculadora Fat FIRE](/calculadoras/fat-fire) oferece recursos únicos para esta estratégia ambiciosa: ### 🎯 Multiplicadores Flexíveis * **Range 25x-50x**: Ajuste o multiplicador conforme seu perfil de risco * **Personalização total**: Escolha exatamente o nível de segurança desejado * **Cenários comparativos**: Visualize diferentes multiplicadores simultaneamente ### 📊 Gráficos Avançados de Projeção A calculadora mostra: * **Crescimento patrimonial**: Linha azul mostrando evolução dos investimentos * **Meta Fat FIRE ajustável**: Linha verde que se adapta ao multiplicador escolhido * **Marcos intermediários**: Pontos de referência durante a jornada ### 💡 Análise de Cenários Sofisticada Interface inclui: * **Simulação de gastos extras**: Como viagens, hobbies caros, emergências familiares * **Análise de inflação de estilo de vida**: Projeção de aumento natural de gastos * **Planejamento de herança**: Cálculo de patrimônio excedente ## Perfis Ideais para Fat FIRE no Brasil ### 1. Executivos de Alto Escalão **Características típicas:** * Renda familiar: R$ 50.000+ por mês * Gastos atuais: R$ 20.000-35.000 por mês * Patrimônio já acumulado: R$ 1-5 milhões * Idade típica de início: 35-45 anos **Estratégia recomendada:** * Multiplicador: 30-35x * Foco em preservação do padrão de vida executivo * Diversificação internacional significativa ### 2. Empresários e Profissionais Liberais **Características típicas:** * Renda variável alta: R$ 30.000-100.000+ por mês * Gastos flutuantes: R$ 15.000-50.000 por mês * Patrimônio em crescimento: R$ 500k-10M+ * Idade de início: 30-50 anos **Estratégia recomendada:** * Multiplicador: 35-40x (devido à variabilidade de renda) * Reservas extras para oportunidades de negócio * Proteção contra volatilidade de renda ### 3. Investidores e Rentistas **Características típicas:** * Renda passiva substancial: R$ 25.000+ por mês * Gastos elevados: R$ 18.000-40.000 por mês * Patrimônio consolidado: R$ 3-20 milhões * Qualquer idade (herança ou sucesso precoce) **Estratégia recomendada:** * Multiplicador: 25-30x (renda já é passiva) * Foco em proteção e crescimento do patrimônio * Otimização fiscal avançada ## Estratégias de Acumulação Fat FIRE no Brasil ### 1. Portfolio de Alto Patrimônio **Alocação Sugerida para Fat FIRE:** * **30%** Ações brasileiras blue-chips * **20%** Fundos Imobiliários de alto padrão * **15%** ETFs internacionais desenvolvidos * **10%** Títulos privados de alta qualidade * **10%** ETFs de mercados emergentes * **5%** Commodities e proteção cambial * **5%** Investimentos alternativos (Private Equity, REITs internacionais) * **5%** Reserva de oportunidade ### 2. Proteção Avançada contra Riscos **Riscos Específicos do Fat FIRE:** **Sequência de Retornos Negativa:** * **Problema**: Perdas no início da aposentadoria são devastadoras para portfolios grandes * **Solução**: Barbell strategy - 3-5 anos em renda fixa + resto em crescimento **Inflação de Estilo de Vida:** * **Problema**: Tendência de aumentar gastos com mais patrimônio * **Solução**: Orçamento fixo rígido nos primeiros anos de Fat FIRE **Concentração Geográfica:** * **Problema**: Dependência excessiva do Brasil * **Solução**: 30-40% em ativos internacionais ### 3. Otimização Fiscal para Grandes Patrimônios **Estratégias Avançadas:** **Previdência Privada VGBL:** * Contribuições de até R$ 200k/ano com benefício fiscal * Ideal para quem tem alta renda tributável * Planejamento sucessório facilitado **Holding Familiar:** * Proteção patrimonial avançada * Otimização na transmissão de herança * Gestão centralizada de investimentos **Diversificação Tributária Internacional:** * ETFs irlandeses (menor tributação) * REITs americanos via tratado tributário * Estruturas offshore legais para não-residentes ## Exemplos Práticos Fat FIRE Brasil ### Caso 1: Executivo de Multinacional (42 anos) **Perfil:** * Renda familiar: R$ 80.000/mês * Gastos atuais: R$ 30.000/mês * Patrimônio atual: R$ 3.200.000 * Aporte mensal: R$ 45.000 * Multiplicador escolhido: **32x** * Rentabilidade esperada: 11% ao ano **Meta Fat FIRE:** R$ 11.520.000 (32 × R$ 360.000 anuais) **Resultado:** * Tempo para Fat FIRE: **8,2 anos** * Idade ao atingir Fat FIRE: **50 anos** * Renda passiva: R$ 30.000/mês (mantendo padrão atual) **Estratégia específica:** * 40% investimentos internacionais (proteção cambial) * Previdência privada máxima para benefício fiscal * Reserva extra para educação dos filhos no exterior ### Caso 2: Empresário de Sucesso (38 anos) **Perfil:** * Renda empresarial: R$ 120.000/mês (variável) * Gastos elevados: R$ 45.000/mês * Patrimônio atual: R$ 5.800.000 * Aporte mensal: R$ 70.000 * Multiplicador escolhido: **40x** * Rentabilidade esperada: 12% ao ano **Meta Fat FIRE:** R$ 21.600.000 (40 × R$ 540.000 anuais) **Resultado:** * Tempo para Fat FIRE: **9,8 anos** * Idade ao atingir Fat FIRE: **48 anos** * Margem de segurança: 80% acima do FIRE tradicional **Diferenciais:** * Multiplicador alto devido à renda variável do negócio * Estratégia de saída parcial da empresa aos 48 anos * Manutenção de participação societária como renda extra ### Caso 3: Casal de Médicos Especialistas (35 anos) **Perfil:** * Renda conjunta: R$ 65.000/mês * Gastos de alto padrão: R$ 25.000/mês * Patrimônio atual: R$ 1.500.000 * Aporte mensal: R$ 35.000 * Multiplicador escolhido: **28x** * Rentabilidade esperada: 10% ao ano **Meta Fat FIRE:** R$ 8.400.000 (28 × R$ 300.000 anuais) **Resultado:** * Tempo para Fat FIRE: **12,5 anos** * Idade ao atingir Fat FIRE: **47 anos** * Flexibilidade para reduzir carga de trabalho gradualmente ## Gestão Avançada do Fat FIRE ### Fase de Acumulação (Pré-FIRE) **1. Otimização de Renda** * **Negociação agressiva**: Salários, bônus, participação nos lucros * **Renda extra escalável**: Consultorias, cursos, investimentos em negócios * **Educação contínua**: MBA, especializações que aumentem earning power **2. Controle de Lifestyle Inflation** * **Orçamento percentual**: Mantenha gastos como % da renda * **Automação de aportes**: Aumente aportes junto com aumentos salariais * **Gastos conscientes**: Foque qualidade sobre quantidade **3. Aceleração através de Ativos** * **Imóveis de renda**: Apartamentos em localizações prime * **Negócios passivos**: Franquias, participações societárias * **Royalties e licenciamentos**: Propriedade intelectual ### Fase de Transição (Near-FIRE) **1. Proteção do Patrimônio** * **Aumento gradual em renda fixa**: Reduzir volatilidade próximo à meta * **Hedge cambial**: Proteção contra desvalorização do real * **Seguros robustos**: Vida, invalidez, responsabilidade civil **2. Planejamento da Saída** * **Redução gradual de responsabilidades**: Transição de 2-3 anos * **Manutenção de vínculos profissionais**: Consultoria esporádica * **Preparação psicológica**: Coaching para transição de carreira ### Fase de Execução (Pós-FIRE) **1. Gestão da Retirada** * **Sistema de buckets**: 5 anos renda fixa + resto em crescimento * **Retiradas flexíveis**: Ajustar conforme performance do mercado * **Rebalanceamento disciplinado**: Manter alocação target **2. Crescimento Contínuo** * **Preservação do poder de compra**: Crescimento acima da inflação * **Oportunidades de reinvestimento**: Aproveitar crises para acelerar * **Novos fluxos de renda**: Hobbies monetizados, investimentos angel ## Riscos Específicos do Fat FIRE e Mitigação ### 1. Risco de Concentração de Renda **Problema:** Dependência excessiva de uma fonte de renda alta **Soluções:** * Diversificação de fontes de renda desde cedo * Construção de multiple streams of income * Network profissional robusto para oportunidades ### 2. Risco de Lifestyle Creep Acelerado **Problema:** Gastos crescem mais rápido que o patrimônio **Soluções:** * Orçamento rígido baseado em percentuais da renda * Automação total dos investimentos * Reviews trimestrais de gastos vs metas ### 3. Risco Político-Econômico Brasileiro **Problema:** Instabilidade pode afetar grandes patrimônios desproporcionalmente **Soluções:** * Diversificação geográfica agressiva (40%+ internacional) * Estruturas legais de proteção patrimonial * Plano B para mudança de país se necessário ### 4. Risco de Sequência de Retornos **Problema:** Perdas nos primeiros anos do Fat FIRE são devastadoras **Soluções:** * Bond tent: Aumentar renda fixa nos últimos 5 anos pré-FIRE * 5-year cash cushion: Nunca vender em baixa * Flexible withdrawal: 3-4% em anos ruins, 4-5% em anos bons ## Ferramentas Complementares para Fat FIRE ### Calculadoras Relacionadas **1. [Calculadora de Dividendos](/calculadoras/simulador-de-rentabilidade-e-dividendos)** * Simule renda passiva para Fat FIRE * Compare diferentes classes de ativos de renda **2. [Calculadora Coast FIRE](/calculadoras/coast-fire)** * Veja quando pode reduzir aportes * Planeje transição gradual para aposentadoria **3. [Calculadora Geographic Arbitrage](/calculadoras/geographic-arbitrage-fire)** * Compare custos de vida internacional * Otimize localização pós-Fat FIRE ### Serviços Profissionais Especializados **Assessoria Financeira:** * Private banking para patrimônios >R$ 10M * Consultoria independente para estruturação * Family office para patrimônios >R$ 50M **Planejamento Tributário:** * Contadores especializados em grandes fortunas * Advogados tributaristas para estruturas complexas * Consultores internacionais para diversificação **Gestão de Riscos:** * Seguros de alta cobertura (R$ 5-50M+) * Estruturas de proteção patrimonial * Planejamento sucessório avançado ## Monitoramento e KPIs Fat FIRE ### Métricas Fundamentais **1. Fat FIRE Progress Ratio** * **Cálculo**: Patrimônio Atual / Meta Fat FIRE * **Marcos**: 10%, 25%, 50%, 75%, 90%, 100% * **Frequência**: Trimestral **2. Passive Income Coverage** * **Cálculo**: Renda Passiva Mensal / Gastos Mensais * **Meta**: >100% (idealmente 120-150% para Fat FIRE) * **Frequência**: Mensal **3. Withdrawal Rate Atual** * **Cálculo**: Gastos Anuais / Patrimônio Total * **Fat FIRE target**: 2-4% (maior margem de segurança) * **Frequência**: Anual ### Dashboard Fat FIRE **Acompanhamento Recomendado:** * **Patrimônio total**: Valor atualizado mensalmente * **Alocação de ativos**: Dentro dos targets definidos * **Performance vs benchmark**: Comparação com índices * **Gastos vs orçamento**: Controle de lifestyle inflation * **Projeção de prazo**: Baseada na performance atual ## Perguntas Frequentes sobre Fat FIRE ### 1. Qual é a diferença prática entre FIRE tradicional e Fat FIRE? **Resposta:** FIRE tradicional usa 25x despesas (4% de retirada), enquanto Fat FIRE usa 25x-50x (2-4% de retirada). Para gastos de R$ 20.000/mês: FIRE tradicional = R$ 6M, Fat FIRE 35x = R$ 8,4M. A diferença oferece muito mais segurança e flexibilidade. ### 2. É possível Fat FIRE no Brasil com renda de R$ 30.000/mês? **Resposta:** É desafiador mas possível. Com gastos de R$ 15.000/mês e aportes de R$ 12.000/mês, levaria cerca de 15-20 anos. Considere aumentar renda através de negócios próprios ou investimentos para acelerar. ### 3. Como lidar com a volatilidade do mercado brasileiro no Fat FIRE? **Resposta:** Diversificação internacional é essencial (30-40% do portfolio). Use também estratégia de bucket (5 anos em renda fixa) e withdrawal rate flexível (3-5% conforme mercado). ### 4. Fat FIRE compensa vs emigração para países desenvolvidos? **Resposta:** Depende do seu perfil. Fat FIRE no Brasil com R$ 8-15M pode oferecer padrão de vida superior ao de classe média alta nos EUA/Europa. Use nossa [calculadora Geographic Arbitrage](/calculadoras/geographic-arbitrage-fire) para comparar. ### 5. Como proteger grande patrimônio de crises políticas/econômicas? **Resposta:** Diversificação geográfica agressiva, estruturas legais de proteção patrimonial, cidadania/residência alternativa, e sempre manter 20-30% em ativos internacionais de alta liquidez. ### 6. Posso fazer Fat FIRE e ainda deixar herança significativa? **Resposta:** Sim! Fat FIRE com multiplicadores 35x+ permite retirada conservadora de 2,5-3%, preservando capital. Com crescimento de 8-10% ao ano, você pode gastar 3% e ainda crescer 5-7% reais. ## Conclusão: Luxo e Segurança na Independência Financeira Fat FIRE representa o ápice do planejamento financeiro: combina independência, segurança e manutenção do alto padrão de vida. Com nossa [Calculadora Fat FIRE](/calculadoras/fat-fire), você pode: **✅ Personalizar multiplicadores** de 25x a 50x conforme seu perfil **✅ Visualizar cenários sofisticados** com gráficos interativos **✅ Planejar margem de segurança** para imprevistos e oportunidades **✅ Comparar estratégias** com outras modalidades FIRE **Fat FIRE é ideal para:** * Executivos e empresários de alta renda * Profissionais liberais estabelecidos * Pessoas que não querem reduzir padrão de vida * Quem busca máxima segurança financeira **Benefícios únicos:** * **Flexibilidade total**: Gastos extras sem comprometer a estratégia * **Legado familiar**: Patrimônio cresce mesmo durante aposentadoria * **Oportunidades**: Capital para novos investimentos e negócios * **Tranquilidade**: Margem de segurança contra qualquer crise Lembre-se: Fat FIRE não é apenas sobre ter mais dinheiro, é sobre ter **liberdade total** - liberdade para viver como quiser, onde quiser, fazendo o que quiser, sem nunca se preocupar com dinheiro novamente. **[🎯 Calcule seu Fat FIRE agora →](/calculadoras/fat-fire)** Descubra quanto você precisa para alcançar a independência financeira com máximo conforto e segurança! # Calculadora FIRE Tradicional 2025: Regra dos 4% Adaptada ao Brasil URL: /blog/calculadora-fire-tradicional-regra-4-porcento-brasil.mdx Aprenda como usar a Calculadora FIRE Tradicional da brapi para planejar sua aposentadoria precoce em 2025. Regra dos 4% com gráficos interativos e estratégias brasileiras atualizadas. *** searchable: true title: 'Calculadora FIRE Tradicional 2025: Regra dos 4% Adaptada ao Brasil' description: 'Aprenda como usar a Calculadora FIRE Tradicional da brapi para planejar sua aposentadoria precoce em 2025. Regra dos 4% com gráficos interativos e estratégias brasileiras atualizadas.' date: '2025-08-22' keywords: 'FIRE tradicional Brasil 2025, regra 4%, aposentadoria precoce, independência financeira, calculadora FIRE gratuita, planejamento financeiro, gráficos interativos' author: 'Equipe brapi.dev' category: 'Independência Financeira' subcategory: 'FIRE Tradicional' readingTime: '12 min' tags: \['FIRE', 'Aposentadoria Precoce', 'Independência Financeira', 'Calculadora', 'Regra 4%', 'Planejamento Financeiro', 'Brasil', 'Investimentos'] relatedPosts: \['calculadora-fat-fire-independencia-financeira-alto-padrao-brasil', 'calculadora-lean-fire-independencia-financeira-minimalista-brasil', 'calculadoras-fire-independencia-financeira-brasil'] featured: true expertise: 'Especialistas em independência financeira e movimento FIRE com metodologias testadas no mercado brasileiro' lastReviewed: '2025-08-22' -------------------------- import { Authors, Author } from '~/components/Authors'; # Calculadora FIRE Tradicional 2025: Regra dos 4% Adaptada ao Brasil > **Descubra o poder da estratégia FIRE mais testada do mundo!** Aprenda como a regra dos 4% pode funcionar perfeitamente no mercado brasileiro de 2025. Nossa Calculadora FIRE Tradicional oferece gráficos interativos e projeções ultrarrealistas para sua jornada rumo à independência financeira. ## 🎯 O que é o FIRE Tradicional? O FIRE Tradicional é baseado na lendária **"regra dos 4%"**, estabelecida pelo famoso Trinity Study. Esta estratégia, testada por décadas nos mercados globais, determina que você precisa acumular **25 vezes suas despesas anuais** para se aposentar com segurança máxima, sacando apenas 4% do patrimônio por ano. ### 🧮 Por que exatamente 25x suas despesas? A matemática é elegante e simples: **📊 Exemplo prático:** * **Gastos mensais:** R$ 8.000 * **Gastos anuais:** R$ 96.000 * **Meta FIRE:** 25 × R$ 96.000 = **R$ 2.400.000** * **Renda passiva anual:** 4% de R$ 2.400.000 = **R$ 96.000** * **Renda passiva mensal:** R$ 8.000 ✅ **🔥 O resultado:** Você mantém exatamente o mesmo padrão de vida... **para sempre!** ## Como Funciona Nossa Calculadora FIRE Tradicional Nossa [Calculadora FIRE Tradicional](/calculadoras/fire-tradicional) oferece recursos únicos: ### 🎯 Gráficos Interativos em Tempo Real * **Linha azul**: Evolução do seu patrimônio * **Linha verde tracejada**: Meta FIRE (25x despesas) * **Atualização automática**: Modifique parâmetros e veja mudanças instantâneas * **Datas reais**: Visualize quando atingirá marcos específicos ### 📊 Cálculos Precisos para o Brasil A calculadora considera: * **Formatação em reais**: Todos os valores em R$ * **Inflação brasileira**: Rentabilidade real acima da inflação * **Tributação local**: Considera o imposto de renda sobre investimentos ### 💡 Tooltips Informativos Passe o mouse sobre qualquer ponto do gráfico para ver: * Valor exato do patrimônio * Data específica * Progresso em relação à meta * Indicadores coloridos para maior clareza ## Adaptando a Regra dos 4% ao Brasil ### Desafios Únicos do Mercado Brasileiro **1. Inflação Histórica** * Brasil teve inflação média de 8,4% nas últimas décadas * Necessidade de investimentos que superem a inflação consistentemente * Foco em ativos reais (ações, FIIs, títulos indexados à inflação) **2. Volatilidade do Mercado** * Maior volatilidade requer margem de segurança adicional * Diversificação entre classes de ativos é essencial * Consideração de exposição internacional para proteção cambial **3. Sistema Tributário Complexo** * Diferentes alíquotas para cada tipo de investimento * Benefícios fiscais da previdência privada * Estratégias de buy and hold para reduzir tributação ### Estratégias Adaptadas para o FIRE Tradicional Brasileiro **Portfolio Sugerido:** * **40%** Ações brasileiras (foco em dividendos) * **20%** Fundos imobiliários * **15%** Títulos do Tesouro IPCA+ * **15%** ETFs internacionais * **10%** Renda fixa privada **Rentabilidade Alvo:** * **Conservador**: 10-12% ao ano (real) * **Moderado**: 12-15% ao ano (real) * **Arrojado**: 15-18% ao ano (real) ## Como Usar a Calculadora: Passo a Passo ### Passo 1: Defina seus Gastos Mensais Inclua **todos** os gastos essenciais: * Moradia (aluguel/financiamento, condomínio, IPTU) * Alimentação * Transporte * Saúde e seguros * Educação * Lazer moderado **Dica importante:** Seja realista. Subestimar gastos é o erro mais comum no planejamento FIRE. ### Passo 2: Insira seu Patrimônio Atual Considere: * Investimentos atuais * Dinheiro em conta corrente/poupança * **Não inclua:** Imóvel próprio (a menos que gere renda) ### Passo 3: Determine seu Aporte Mensal Calculate baseado em: * Renda líquida atual * Gastos já definidos * Meta de economia (recomendado: mínimo 20% da renda) ### Passo 4: Escolha a Rentabilidade Esperada Para o Brasil, recomendamos: * **Iniciantes**: 10% ao ano * **Experientes**: 12% ao ano * **Avançados**: 15% ao ano ## Exemplos Práticos de FIRE Tradicional ### Caso 1: Profissional Jovem (25 anos) **Perfil:** * Gastos: R$ 5.000/mês * Patrimônio atual: R$ 50.000 * Aporte mensal: R$ 3.000 * Rentabilidade: 12% ao ano **Resultado:** * Meta FIRE: R$ 1.500.000 * Tempo para FIRE: **14,2 anos** * Idade ao atingir FIRE: **39 anos** ### Caso 2: Casal Estabelecido (35 anos) **Perfil:** * Gastos: R$ 12.000/mês * Patrimônio atual: R$ 300.000 * Aporte mensal: R$ 6.000 * Rentabilidade: 11% ao ano **Resultado:** * Meta FIRE: R$ 3.600.000 * Tempo para FIRE: **16,8 anos** * Idade ao atingir FIRE: **52 anos** ### Caso 3: Executivo Sênior (45 anos) **Perfil:** * Gastos: R$ 20.000/mês * Patrimônio atual: R$ 800.000 * Aporte mensal: R$ 15.000 * Rentabilidade: 10% ao ano **Resultado:** * Meta FIRE: R$ 6.000.000 * Tempo para FIRE: **13,5 anos** * Idade ao atingir FIRE: **58 anos** ## Estratégias para Acelerar seu FIRE Tradicional ### 1. Otimização de Gastos **Técnicas comprovadas:** * **Auditoria mensal**: Revise todos os gastos mensalmente * **Regra 50/30/20**: 50% necessidades, 30% desejos, 20% investimentos * **Compras conscientes**: Espere 24h antes de compras não essenciais ### 2. Aumento de Renda **Opções práticas:** * **Renda extra**: Freelances, consultorias, vendas online * **Investimento em educação**: Cursos que aumentem seu valor de mercado * **Progressão na carreira**: Foque em promoções e mudanças estratégicas ### 3. Otimização de Investimentos **Estratégias avançadas:** * **Rebalanceamento regular**: Mantenha alocação desejada * **Dollar cost averaging**: Invista valor fixo mensalmente * **Tax loss harvesting**: Use prejuízos para compensar ganhos ## Riscos e Como Mitigá-los ### Principais Riscos do FIRE Tradicional **1. Sequência de Retornos** * **Problema**: Perdas no início da aposentadoria são devastadoras * **Solução**: Mantenha 2-3 anos de gastos em renda fixa **2. Inflação Acelerada** * **Problema**: Erosão do poder de compra * **Solução**: Portfolio com proteção inflacionária (IPCA+, ações) **3. Gastos Inesperados** * **Problema**: Emergências médicas, familiares * **Solução**: Reserva de emergência adicional de 6-12 meses ### Estratégias de Mitigação Específicas para o Brasil **1. Diversificação Geográfica** * 10-20% em ETFs internacionais * Proteção contra instabilidade política/econômica local **2. Múltiplas Fontes de Renda** * Dividendos de ações * Aluguéis de FIIs * Títulos públicos * Renda variável internacional **3. Flexibilidade nos Gastos** * Identifique gastos "compressíveis" * Tenha plano B para cortes temporários * Considere mudança para cidades mais baratas ## Monitoramento e Ajustes ### Indicadores-Chave para Acompanhar **1. Taxa de Economia** * Meta: >50% da renda * Acompanhamento: Mensal **2. Progresso em Direção à Meta** * Meta: Patrimônio crescendo conforme projeção * Acompanhamento: Trimestral **3. Rentabilidade Real** * Meta: Acima da inflação + 6% ao ano * Acompanhamento: Anual ### Quando Fazer Ajustes **Revise sua estratégia se:** * Rentabilidade consistentemente abaixo do esperado (>2 anos) * Mudanças significativas na vida (casamento, filhos, doença) * Alterações no mercado financeiro brasileiro * Mudanças na legislação tributária ## Ferramentas Complementares ### Use Junto com a Calculadora FIRE Tradicional **1. [Calculadora de Dividendos](/calculadoras/simulador-de-rentabilidade-e-dividendos)** * Simule renda passiva mensal * Compare diferentes tipos de ativos **2. [Calculadora Coast FIRE](/calculadoras/coast-fire)** * Veja quando pode parar de aportar * Planeje transições graduais **3. [Calculadora Lean FIRE](/calculadoras/lean-fire)** * Compare com estratégia mais agressiva * Identifique possibilidade de meta antecipada ## Perguntas Frequentes sobre FIRE Tradicional ### 1. A regra dos 4% funciona no Brasil? **Resposta:** Sim, mas com adaptações. O estudo original foi baseado no mercado americano, mas a lógica é válida. No Brasil, recomendamos ser mais conservador devido à maior volatilidade e considerar uma taxa de 3,5% inicialmente. ### 2. Devo incluir a casa própria no cálculo FIRE? **Resposta:** Apenas se ela gerar renda (aluguel). A casa própria reduz seus gastos mensais, mas não gera renda passiva. Inclua no cálculo de gastos a redução do aluguel, mas não como ativo no patrimônio FIRE. ### 3. Como considerar a previdência privada no FIRE Tradicional? **Resposta:** A previdência privada pode complementar seu FIRE, especialmente pelo benefício fiscal. Considere como parte da alocação em renda fixa do seu portfolio, mas lembre-se das limitações de liquidez. ### 4. E se eu não conseguir manter os aportes? **Resposta:** Use nossa calculadora para simular diferentes cenários de aportes. Mesmo com reduções temporárias, o importante é manter a consistência a longo prazo. O crescimento composto ainda funcionará. ### 5. Quando devo considerar mudar para Fat FIRE ou Lean FIRE? **Resposta:** Se seus gastos aumentarem significativamente (filhos, estilo de vida), considere [Fat FIRE](/calculadoras/fat-fire). Se conseguir reduzir gastos drasticamente, [Lean FIRE](/calculadoras/lean-fire) pode acelerar sua independência. ### 6. Como lidar com crises econômicas durante a acumulação? **Resposta:** Crises são oportunidades para acelerar o FIRE. Mantenha os aportes, aproveite preços baixos para comprar mais. Nossa calculadora assume volatilidade nas projeções de longo prazo. ## Conclusão: Seu Primeiro Passo para a Independência Financeira O FIRE Tradicional representa a estratégia mais testada e confiável para alcançar a independência financeira. Com nossa [Calculadora FIRE Tradicional](/calculadoras/fire-tradicional), você tem acesso a: **✅ Projeções precisas** adaptadas ao mercado brasileiro **✅ Gráficos interativos** que se atualizam em tempo real **✅ Cenários realistas** considerando inflação e tributação local **Próximos passos:** 1. **[Acesse a calculadora](/calculadoras/fire-tradicional)** e insira seus dados 2. **Experimente diferentes cenários** modificando aportes e rentabilidade 3. **Compare com outras estratégias** usando nossas outras calculadoras FIRE 4. **Comece a investir** baseado no plano desenvolvido Lembre-se: o FIRE Tradicional não é uma corrida, é uma maratona. Consistência e disciplina são mais importantes que perfeição. Comece hoje mesmo e deixe o tempo e os juros compostos trabalharem a seu favor! **[🎯 Calcule seu FIRE Tradicional agora →](/calculadoras/fire-tradicional)** # Calculadora Lean FIRE 2025: Independência Financeira Minimalista no Brasil URL: /blog/calculadora-lean-fire-independencia-financeira-minimalista-brasil.mdx Aprenda como alcançar FIRE mais rápido com a Calculadora Lean FIRE 2025. Estratégia minimalista adaptada ao Brasil com gráficos interativos e metas acessíveis. *** searchable: true title: 'Calculadora Lean FIRE 2025: Independência Financeira Minimalista no Brasil' description: 'Aprenda como alcançar FIRE mais rápido com a Calculadora Lean FIRE 2025. Estratégia minimalista adaptada ao Brasil com gráficos interativos e metas acessíveis.' date: '2025-08-22' keywords: 'Lean FIRE Brasil 2025, minimalismo financeiro, independência financeira rápida, aposentadoria precoce acessível, calculadora FIRE gratuita, estratégia minimalista' author: 'Equipe brapi.dev' category: 'Independência Financeira' subcategory: 'Lean FIRE' readingTime: '11 min' tags: \['Lean FIRE', 'Minimalismo', 'Independência Financeira', 'Calculadora', 'Aposentadoria Rápida', 'Planejamento Financeiro', 'Brasil', 'Economia'] relatedPosts: \['calculadora-fire-tradicional-regra-4-porcento-brasil', 'calculadora-fat-fire-independencia-financeira-alto-padrao-brasil', 'calculadoras-fire-independencia-financeira-brasil'] featured: true expertise: 'Especialistas em estratégias FIRE minimalistas com foco em eficiência e aceleração da independência financeira' lastReviewed: '2025-08-22' -------------------------- import { Authors, Author } from '~/components/Authors'; # Calculadora Lean FIRE 2025: Independência Financeira Minimalista no Brasil > **Acelere sua liberdade financeira com menos!** Descubra como o Lean FIRE pode revolucionar sua independência financeira no Brasil de 2025. Com foco em minimalismo inteligente e máxima eficiência, esta estratégia oferece o caminho mais rápido e acessível para a liberdade financeira. ## 🚀 O que é Lean FIRE? Lean FIRE é a **abordagem turbo** do movimento FIRE, focada em atingir a independência financeira com uma meta menor de patrimônio através da redução inteligente de gastos e adoção de um estilo de vida minimalista eficiente. Em vez da regra tradicional dos 4% (25x despesas), o Lean FIRE usa **5% (20x despesas)**, permitindo metas 20% mais acessíveis. ### ⚡ Lean FIRE vs FIRE Tradicional - A Comparação Definitiva | 🎯 **Aspecto** | **FIRE Tradicional** | **Lean FIRE** | | ---------------------- | -------------------- | --------------------------------- | | **Taxa de retirada** | 4% ao ano | **5% ao ano** | | **Multiplicador** | 25x despesas | **20x despesas** | | **Foco principal** | Manter padrão atual | **Otimizar gastos drasticamente** | | **Meta patrimonial** | Maior | **20% menor** | | **Tempo para atingir** | Mais longo | **2-5 anos mais rápido** | | **Flexibilidade** | Moderada | **Alta (minimalismo)** | ### Por que Lean FIRE faz Sentido no Brasil? **1. Custo de Vida Flexível** * Grandes diferenças regionais permitem arbitragem geográfica * Possibilidade de viver bem com menos em muitas cidades brasileiras * Cultura de simplicidade já presente em muitas regiões **2. Oportunidades de Redução de Gastos** * Transporte público eficiente em várias cidades * Alimentação diversificada e acessível * Opções de lazer gratuitas abundantes **3. Mercado Imobiliário Diverso** * Possibilidade de morar em regiões mais baratas * Aluguel como alternativa à compra * Flexibilidade para mudanças conforme oportunidades ## Como Funciona Nossa Calculadora Lean FIRE Nossa [Calculadora Lean FIRE](/calculadoras/lean-fire) oferece recursos específicos para esta estratégia: ### 🎯 Visualização da Meta Reduzida * **Multiplicador 20x**: Automaticamente calcula 20 vezes suas despesas anuais * **Gráfico comparativo**: Veja a diferença em relação ao FIRE tradicional * **Economia de tempo**: Visualize quantos anos você pode economizar ### 📊 Foco em Eficiência A calculadora destaca: * **Taxa de economia alta**: Incentiva aportes agressivos * **Gastos otimizados**: Ferramentas para análise de redução de gastos * **Cenários flexíveis**: Simule diferentes níveis de minimalismo ### 💡 Dicas de Minimalismo Financeiro Interface inclui: * Sugestões de redução de gastos específicas para o Brasil * Comparação de custos entre regiões * Estratégias de otimização de estilo de vida ## Estratégias Lean FIRE Adaptadas ao Brasil ### 1. Redução Inteligente de Gastos **Moradia (40-50% dos gastos típicos)** * **Aluguel**: Prefira bairros em desenvolvimento ou cidades menores * **Compartilhamento**: Considere repúblicas ou co-living * **Localização estratégica**: Priorize proximidade ao trabalho/transporte público **Transporte (10-15% dos gastos)** * **Transporte público**: Maximize uso de metrô, ônibus, bicicleta * **Carsharing**: Use apenas quando necessário * **Trabalho remoto**: Negocie home office para reduzir custos **Alimentação (15-20% dos gastos)** * **Cozinhar em casa**: Redução de 60-70% vs restaurantes * **Compras inteligentes**: Atacadão, feiras livres, sazonalidade * **Horta urbana**: Cultivo de temperos e vegetais básicos ### 2. Arbitragem Geográfica Brasileira **Cidades com Melhor Custo-Benefício:** **Região Nordeste:** * Fortaleza: Custo 40% menor que SP, boa infraestrutura * Recife: Vida cultural rica, custos moderados * Salvador: Clima favorável, custos baixos **Região Sul:** * Florianópolis: Qualidade de vida alta, custos moderados * Curitiba: Transporte público excelente, cultura europeia * Porto Alegre: Vida cultural intensa, custos acessíveis **Interior de São Paulo:** * Campinas: Proximidade a SP, custos 30% menores * São Carlos: Cidade universitária, infraestrutura boa * Ribeirão Preto: Economia forte, custo de vida baixo ### 3. Portfolio Lean FIRE Brasileiro **Alocação Sugerida:** * **50%** Fundos Imobiliários (renda mensal estável) * **30%** Ações com foco em dividendos * **15%** Títulos do Tesouro IPCA+ * **5%** Reserva de emergência **Foco em Renda Passiva:** * Priorizar ativos que geram renda mensal * Dividendos previsíveis para planejamento * Baixa necessidade de venda de ativos ## Exemplos Práticos de Lean FIRE no Brasil ### Caso 1: Jovem Profissional Minimalista (28 anos) **Perfil:** * Gastos atuais: R$ 8.000/mês → **Reduzidos para R$ 4.000/mês** * Patrimônio atual: R$ 80.000 * Aporte mensal: R$ 4.500 (aumento devido à redução de gastos) * Rentabilidade: 12% ao ano **Meta Lean FIRE:** R$ 960.000 (20 × R$ 48.000 anuais) **Resultado:** * Tempo para FIRE: **10,2 anos** * Idade ao atingir FIRE: **38 anos** * **5 anos mais rápido** que FIRE tradicional **Principais mudanças:** * Mudança para apartamento menor e melhor localizado * Venda do carro, uso de transporte público * Redução de gastos supérfluos (assinaturas, delivery, roupas) ### Caso 2: Casal Consciente (32 anos) **Perfil:** * Gastos atuais: R$ 15.000/mês → **Reduzidos para R$ 8.000/mês** * Patrimônio atual: R$ 200.000 * Aporte mensal: R$ 8.000 * Rentabilidade: 11% ao ano **Meta Lean FIRE:** R$ 1.920.000 **Resultado:** * Tempo para FIRE: **12,8 anos** * Idade ao atingir FIRE: **45 anos** * **Economia mensal de R$ 7.000** reinvestida **Estratégias adotadas:** * Mudança para cidade do interior com home office * Horta urbana e compostagem * Minimalismo consciente em compras ### Caso 3: Executivo em Transição (40 anos) **Perfil:** * Gastos atuais: R$ 25.000/mês → **Reduzidos para R$ 12.000/mês** * Patrimônio atual: R$ 600.000 * Aporte mensal: R$ 18.000 * Rentabilidade: 10% ao ano **Meta Lean FIRE:** R$ 2.880.000 **Resultado:** * Tempo para FIRE: **8,5 anos** * Idade ao atingir FIRE: **48 anos** * **Rápida transição** para independência ## Guia Prático: Implementando Lean FIRE ### Fase 1: Auditoria Completa de Gastos (Mês 1-2) **Ferramentas necessárias:** * App de controle financeiro (Mobills, GuiaBolso, planilha própria) * Extratos dos últimos 6 meses * Categorização detalhada de todos os gastos **Processo:** 1. **Mapeamento total**: Anote TODOS os gastos por 2 meses 2. **Categorização**: Separe em essencial, importante, supérfluo 3. **Análise de padrões**: Identifique gastos inconscientes 4. **Benchmark**: Compare com médias brasileiras ### Fase 2: Redução Estratégica (Mês 3-6) **Metodologia dos Cortes Graduais:** **Mês 3: Cortes Fáceis (10-15% de redução)** * Cancelamento de assinaturas não utilizadas * Redução de delivery e restaurantes * Otimização de planos (celular, internet, TV) **Mês 4: Cortes Moderados (20-25% de redução)** * Renegociação de contratos (academia, seguros) * Mudança de hábitos de consumo * Implementação de alternativas gratuitas/baratas **Mês 5-6: Mudanças Estruturais (30-40% de redução)** * Avaliação de mudança de moradia * Reestruturação de transporte * Adoção completa do estilo de vida minimalista ### Fase 3: Otimização e Sustentabilidade (Mês 7+) **Manutenção dos Cortes:** * **Revisão mensal**: Ajustes baseados em experiência * **Automatização**: Sistemas que impedem gastos supérfluos * **Comunidade**: Conecte-se com outros praticantes de Lean FIRE **Reinvestimento das Economias:** * **Aporte automático**: Configure transferências automáticas * **Diversificação gradual**: Construa portfolio focado em renda * **Educação financeira**: Continue aprendendo sobre investimentos ## Desafios Específicos do Lean FIRE no Brasil ### 1. Pressão Social **Problema:** Cultura brasileira de ostentação e gastos sociais altos **Soluções:** * **Educação do círculo social**: Explique seus objetivos * **Alternativas criativas**: Proponha programas baratos/gratuitos * **Comunidade FIRE**: Conecte-se com pessoas com objetivos similares ### 2. Inflação e Erosão do Poder de Compra **Problema:** Inflação pode tornar 5% insuficiente ao longo do tempo **Soluções:** * **Portfolio proteção inflacionária**: IPCA+, ações, FIIs * **Revisão anual**: Ajuste metas conforme inflação * **Flexibilidade geográfica**: Mude para locais mais baratos se necessário ### 3. Gastos de Saúde Inesperados **Problema:** Sistema de saúde brasileiro pode gerar custos altos **Soluções:** * **Plano de saúde básico**: Mantenha cobertura mínima * **Reserva médica**: 12-18 meses de gastos extras para saúde * **Prevenção**: Invista em saúde preventiva e estilo de vida saudável ### 4. Limitações de Renda **Problema:** Lean FIRE pode limitar renda e oportunidades futuras **Soluções:** * **Barista FIRE como transição**: Trabalho parcial + renda passiva * **Renda passiva escalável**: Invista em ativos que crescem com inflação * **Flexibilidade para retorno**: Mantenha habilidades profissionais atualizadas ## Ferramentas e Recursos para Lean FIRE ### Calculadoras Complementares **1. [Calculadora de Dividendos](/calculadoras/simulador-de-rentabilidade-e-dividendos)** * Simule renda mensal de FIIs e ações * Essencial para planejar fluxo de caixa no Lean FIRE **2. [Calculadora Coast FIRE](/calculadoras/coast-fire)** * Veja quando pode reduzir aportes * Planeje transição para Lean FIRE **3. [Calculadora Geographic Arbitrage](/calculadoras/geographic-arbitrage-fire)** * Compare custos entre cidades brasileiras * Otimize localização para Lean FIRE ### Apps e Ferramentas Recomendadas **Controle de Gastos:** * Mobills (brasileiro, categorização automática) * GuiaBolso (integração bancária) * Minhas Economias (planejamento de metas) **Investimentos:** * Rico (corretora completa) * XP Investimentos (research de qualidade) * Suno Research (análise de FIIs e ações) **Estilo de Vida:** * Too Good To Go (combate desperdício alimentar) * Bike Sampa (transporte sustentável) * Freecycle (troca de itens gratuitos) ## Monitoramento e Métricas Lean FIRE ### KPIs Essenciais **1. Taxa de Economia** * **Meta Lean FIRE**: >60% da renda líquida * **Cálculo**: (Renda - Gastos) / Renda * **Frequência**: Mensal **2. Progresso para Meta** * **Cálculo**: Patrimônio Atual / Meta Lean FIRE * **Marcos**: 25%, 50%, 75%, 90%, 100% * **Frequência**: Trimestral **3. Renda Passiva vs Gastos** * **Meta final**: Renda passiva ≥ 105% dos gastos * **Cálculo**: Dividendos + Juros / Gastos Mensais * **Frequência**: Mensal ### Sinais de Alerta **Revise sua estratégia se:** * Taxa de economia \< 50% por 3 meses consecutivos * Gastos crescendo acima da inflação consistentemente * Patrimônio não crescendo conforme projeção * Qualidade de vida impactada negativamente ## Perguntas Frequentes sobre Lean FIRE ### 1. Lean FIRE é muito restritivo para o brasileiro médio? **Resposta:** Não necessariamente. O Lean FIRE se adapta ao seu contexto atual. Se você gasta R$ 8.000/mês, pode reduzir para R$ 5.000-6.000 mantendo qualidade de vida. A chave é eficiência, não privação extrema. ### 2. Como lidar com gastos sazonais (férias, presentes)? **Resposta:** Inclua estes gastos na média anual. Se gasta R$ 6.000 em férias + R$ 2.400 em presentes por ano, adicione R$ 700/mês aos seus gastos básicos no planejamento Lean FIRE. ### 3. E se eu quiser ter filhos durante o Lean FIRE? **Resposta:** Filhos aumentam gastos significativamente. Considere transição para [FIRE Tradicional](/calculadoras/fire-tradicional) ou [Coast FIRE](/calculadoras/coast-fire) quando planejar família. ### 4. Posso fazer Lean FIRE morando em São Paulo? **Resposta:** É possível, mas desafiador. Considere bairros periféricos bem conectados, apartamentos menores, transporte público. Alternativamente, trabalho remoto permite mudança para cidades mais baratas. ### 5. Qual a diferença prática entre 4% e 5% de retirada? **Resposta:** Para R$ 6.000/mês de gastos: FIRE tradicional = R$ 1.800.000, Lean FIRE = R$ 1.440.000. Diferença de R$ 360.000 pode representar 3-5 anos a menos de acumulação. ### 6. Como saber se o Lean FIRE é para mim? **Resposta:** Experimente viver com 20% menos gastos por 3-6 meses. Se conseguir manter qualidade de vida satisfatória, o Lean FIRE pode ser adequado para você. ## Conclusão: Acelere sua Independência com Lean FIRE O Lean FIRE oferece um caminho mais rápido e acessível para a independência financeira no Brasil. Com nossa [Calculadora Lean FIRE](/calculadoras/lean-fire), você pode: **✅ Visualizar metas menores** e mais alcançáveis **✅ Simular cenários de redução** de gastos **✅ Comparar tempo ganho** vs FIRE tradicional **✅ Planejar transições** para estilo de vida minimalista **Vantagens do Lean FIRE:** * **Tempo reduzido**: 3-7 anos mais rápido que FIRE tradicional * **Meta menor**: 20% menos patrimônio necessário * **Flexibilidade**: Possibilidade de upgrades futuros * **Aprendizado**: Desenvolve disciplina financeira extrema **Ideal para:** * Jovens profissionais com gastos flexíveis * Pessoas que valorizam experiências sobre bens materiais * Quem quer acelerar a independência financeira * Moradores de regiões com custo de vida alto Lembre-se: Lean FIRE não é sobre privação, é sobre **eficiência máxima**. Cada real economizado é um passo mais próximo da sua liberdade financeira. **[🎯 Calcule seu Lean FIRE agora →](/calculadoras/lean-fire)** Comece hoje mesmo a otimizar seus gastos e acelere sua jornada rumo à independência financeira! # Calculadoras FIRE 2025: Guia Definitivo para Independência Financeira no Brasil URL: /blog/calculadoras-fire-independencia-financeira-brasil.mdx Descubra como usar as 6 calculadoras FIRE gratuitas da brapi para planejar sua aposentadoria precoce. Traditional, Lean, Fat, Coast, Barista e Geographic Arbitrage FIRE com gráficos interativos. *** searchable: true title: 'Calculadoras FIRE 2025: Guia Definitivo para Independência Financeira no Brasil' description: 'Descubra como usar as 6 calculadoras FIRE gratuitas da brapi para planejar sua aposentadoria precoce. Traditional, Lean, Fat, Coast, Barista e Geographic Arbitrage FIRE com gráficos interativos.' date: '2025-08-22' keywords: 'FIRE Brasil 2025, independência financeira, calculadora FIRE gratuita, aposentadoria precoce, planejamento financeiro, investimentos Brasil, gráficos interativos' author: 'Equipe brapi.dev' category: 'Independência Financeira' subcategory: 'Guia Completo FIRE' readingTime: '18 min' tags: \['FIRE', 'Calculadoras', 'Independência Financeira', 'Aposentadoria Precoce', 'Planejamento Financeiro', 'Brasil', 'Guia Completo', 'Investimentos'] relatedPosts: \['calculadora-fire-tradicional-regra-4-porcento-brasil', 'calculadora-fat-fire-independencia-financeira-alto-padrao-brasil', 'calculadora-lean-fire-independencia-financeira-minimalista-brasil'] featured: true expertise: 'Guia completo criado por especialistas em independência financeira com experiência em todas as modalidades FIRE' lastReviewed: '2025-08-22' -------------------------- import { Authors, Author } from '~/components/Authors'; # Calculadoras FIRE 2025: Guia Definitivo para Independência Financeira no Brasil > **Conquiste sua liberdade financeira em 2025!** Descubra como alcançar a independência financeira no Brasil com nossas 6 calculadoras FIRE gratuitas e interativas. Planeje sua aposentadoria precoce com estratégias testadas, adaptadas ao mercado brasileiro, e visualize sua jornada através de gráficos em tempo real. ## 🔥 O que é FIRE e por que é a revolução financeira de 2025? **FIRE** (Financial Independence, Retire Early) é o movimento que está transformando a vida financeira de milhares de brasileiros. Em 2025, com a evolução do mercado financeiro nacional e novas oportunidades de investimento, alcançar a independência financeira tornou-se mais acessível do que nunca. ### A realidade brasileira em 2025 e o movimento FIRE O Brasil de 2025 apresenta o cenário perfeito para estratégias FIRE: * **🏦 Mercado financeiro maduro**: Mais opções de investimento, menores taxas e maior democratização * **📱 Tecnologia financeira avançada**: Apps, plataformas e ferramentas que facilitam o planejamento * **💰 PIX e novos meios de pagamento**: Maior controle sobre gastos e economia digital * **🎓 Educação financeira popular**: Movimento FIRE ganhando força nas redes sociais e mídia ### Por que 2025 é o ano ideal para começar seu FIRE? **✅ Juros em patamar favorável para ações**\ **✅ Inflação controlada facilitando planejamento**\ **✅ Novas classes de ativos (criptos, REITs, ETFs)**\ **✅ Ferramentas gratuitas como nossas calculadoras** ## 🚀 Calculadoras FIRE da brapi: Ferramentas Revolucionárias para 2025 Nossa plataforma oferece **6 calculadoras FIRE gratuitas e especializadas**, cada uma desenvolvida para diferentes perfis e objetivos financeiros. Todas as calculadoras incluem tecnologia de ponta: ### 🎯 Recursos Exclusivos de 2025 * **📊 Gráficos interativos em tempo real** que se atualizam conforme você modifica os parâmetros * **🎯 Linha de meta FIRE** mostrando quando você atingirá a independência financeira * **💰 Formatação em reais brasileiros** para máxima precisão nos cálculos * **📅 Datas reais no eixo temporal** (ex: "ago. de 2026" ao invés de "10m") * **🔍 Tooltips avançados** com indicadores coloridos e informações detalhadas * **📱 Design responsivo** otimizado para mobile e desktop ### 📈 O poder da visualização em tempo real Diferente de calculadoras estáticas, nossas ferramentas permitem: * **Simulação instantânea** de cenários alternativos * **Comparação visual** entre estratégias * **Acompanhamento do progresso** ao longo do tempo * **Tomada de decisão baseada em dados** ### 1. 🎯 Calculadora FIRE Tradicional: A Base de Tudo A [Calculadora FIRE Tradicional](/calculadoras/fire-tradicional) é sua porta de entrada para o mundo FIRE, baseada na comprovada regra dos 4%. **🔢 Como funciona:** * Taxa de retirada: **4% ao ano** * Multiplicador: **25x suas despesas anuais** * Abordagem: **Conservadora e testada globalmente** * Ideal para: **Iniciantes no movimento FIRE** **💡 Exemplo prático 2025:** * Gastos mensais: R$ 8.000 * Meta FIRE: R$ 2.400.000 (25 × R$ 96.000 anuais) * Renda passiva: R$ 8.000/mês (4% de R$ 2.400.000) ### 2. ⚡ Calculadora Lean FIRE: Máxima Eficiência O [Lean FIRE](/calculadoras/lean-fire) é perfeito para quem abraça o minimalismo e quer acelerar a independência financeira. **🔢 Como funciona:** * Taxa de retirada: **5% ao ano** * Multiplicador: **20x suas despesas anuais** * Abordagem: **Minimalista e eficiente** * Ideal para: **Quem consegue viver com menos** **🏃♂️ Vantagem do Lean FIRE:** Meta 20% menor = chegada mais rápida à independência financeira ### 3. 💎 Calculadora Fat FIRE: Conforto Máximo Para quem não abre mão do alto padrão de vida, a [Calculadora Fat FIRE](/calculadoras/fat-fire) oferece flexibilidade total. **🔢 Como funciona:** * Multiplicador: **25x a 50x** (você escolhe) * Abordagem: **Flexível e personalizada** * Ideal para: **Altos padrões de vida** * Benefício: **Margem de segurança máxima** ### 4. 🌊 Calculadora Coast FIRE: Piloto Automático O [Coast FIRE](/calculadoras/coast-fire) mostra quando você pode "parar de aportar" e deixar os juros compostos fazerem o trabalho. **🔢 Como funciona:** * Calcula baseado na **idade de aposentadoria desejada** * Considera **crescimento natural** dos investimentos atuais * Ideal para: **Quem já tem uma base de investimentos** ### 5. ☕ Calculadora Barista FIRE: O Melhor dos Dois Mundos A [Calculadora Barista FIRE](/calculadoras/barista-fire) combina trabalho flexível com renda passiva para máxima qualidade de vida. **🔢 Como funciona:** * Combina **trabalho em meio período** com investimentos * Reduz pressão de acumular 100% via investimentos * Permite **transição gradual** para aposentadoria completa ### 6. 🌍 Calculadora Geographic Arbitrage FIRE: Aproveite as Diferenças A [Calculadora Geographic Arbitrage FIRE](/calculadoras/geographic-arbitrage-fire) explora as diferenças de custo de vida para acelerar seu FIRE. **🔢 Como funciona:** * Compara **mais de 20 destinos** brasileiros e internacionais * Aproveita **poder de compra** em locais mais baratos * Ideal para: **Nômades digitais** e **aposentados flexíveis** ## 💰 Calculadora de Dividendos: O Complemento Perfeito Nossa [Calculadora de Dividendos](/calculadoras/simulador-de-rentabilidade-e-dividendos) é o complemento essencial para suas estratégias FIRE: ### 🎯 Recursos exclusivos * **📊 Simulação de rentabilidade** com diferentes ativos * **🏢 Comparação entre** ações, FIIs e renda fixa * **📈 Análise de fluxo** de dividendos mensais * **📱 Gráficos interativos** com projeções de crescimento ### 💡 Por que usar junto com FIRE? * Planeje sua **renda passiva mensal** * Compare **diferentes estratégias** de investimento * Visualize o **poder dos dividendos** na construção de patrimônio ## 🎯 Como Usar as Calculadoras para Maximizar Resultados em 2025 ### Passo 1: Identifique seu Perfil FIRE **🤔 Faça o teste rápido:** * **Conservador?** → [Traditional FIRE](/calculadoras/fire-tradicional) ou [Lean FIRE](/calculadoras/lean-fire) * **Arrojado?** → [Fat FIRE](/calculadoras/fat-fire) ou [Geographic Arbitrage](/calculadoras/geographic-arbitrage-fire) * **Flexível?** → [Coast FIRE](/calculadoras/coast-fire) ou [Barista FIRE](/calculadoras/barista-fire) ### Passo 2: Domine os Gráficos Interativos **🎮 Recursos para explorar:** * **Modifique valores** e veja mudanças instantâneas * **Compare cenários** lado a lado * **Analise datas específicas** para marcos importantes * **Use tooltips** para dados precisos ### Passo 3: Crie Cenários Realistas **📋 Checklist essencial:** * ✅ Gastos mensais **realistas** (inclua tudo!) * ✅ Patrimônio atual **preciso** * ✅ Aportes mensais **sustentáveis** * ✅ Rentabilidade **conservadora** (10-15% para Brasil) ## 🚀 Estratégias Vencedoras para o Mercado Brasileiro 2025 ### 🛡️ Proteção contra Inflação (Estratégia Essencial) No Brasil, a proteção inflacionária é fundamental: **🎯 Portfolio Anti-Inflação 2025:** * **30%** Tesouro IPCA+ (proteção garantida) * **40%** Ações de empresas sólidas (crescimento real) * **20%** Fundos Imobiliários (renda corrigida) * **10%** ETFs internacionais (proteção cambial) ### 💰 Otimização Tributária Inteligente **🧠 Táticas comprovadas:** * **Previdência Privada:** Benefícios fiscais para complementar FIRE * **Buy and Hold:** Redução dramática da tributação * **Fundos de Investimento:** Vantagens do come-cotas ### 🌍 Diversificação Geográfica Estratégica **🎯 Alocação sugerida para 2025:** * **70%** Ativos brasileiros (mercado doméstico) * **20%** ETFs internacionais (exposição global) * **10%** Criptomoedas (diversificação adicional) ## 📊 Ferramentas Avançadas de Visualização ### 🎨 Gráficos de Progressão Patrimonial Nossas calculadoras apresentam visualização profissional: * **📈 Linha azul:** Evolução do patrimônio em tempo real * **🎯 Linha verde tracejada:** Meta FIRE personalizada * **💡 Tooltips informativos:** Valores exatos e datas específicas * **📱 Interface responsiva:** Perfeita em qualquer dispositivo ### 🔄 Análise de Cenários em Tempo Real **Veja o impacto instantâneo de:** * Mudanças na rentabilidade esperada * Aumentos ou reduções nos aportes * Diferentes níveis de gastos mensais * Alterações no patrimônio inicial ## 🎯 Guia Prático: Começando sua Jornada FIRE em 2025 ### Passo 1: 📊 Auditoria Financeira Completa **📋 Calcule seus gastos reais:** * 🏠 **Moradia:** Aluguel/financiamento, condomínio, IPTU * 🍽️ **Alimentação:** Supermercado, delivery, restaurantes * 🚗 **Transporte:** Combustível, transporte público, manutenção * 🏥 **Saúde:** Plano, medicamentos, consultas * 🎓 **Educação:** Cursos, livros, especializações * 🎉 **Lazer:** Entretenimento, viagens, hobbies **💡 Dica de ouro:** Use apps como Mobills ou GuiaBolso para rastrear gastos automaticamente. ### Passo 2: 🎯 Defina sua Rentabilidade Alvo 2025 **Para o mercado brasileiro atual:** * **🟢 Conservador:** 8-10% ao ano (Tesouro + renda fixa) * **🟡 Moderado:** 12-15% ao ano (misto RF + ações) * **🔴 Arrojado:** 15-20% ao ano (foco em ações e growth) ### Passo 3: 🚀 Escolha sua Estratégia FIRE **🎮 Teste todas as calculadoras:** 1. **[Traditional FIRE](/calculadoras/fire-tradicional)** - Máxima segurança 2. **[Lean FIRE](/calculadoras/lean-fire)** - Meta mais rápida 3. **[Fat FIRE](/calculadoras/fat-fire)** - Conforto total 4. **[Coast FIRE](/calculadoras/coast-fire)** - Piloto automático 5. **[Barista FIRE](/calculadoras/barista-fire)** - Flexibilidade máxima 6. **[Geographic Arbitrage](/calculadoras/geographic-arbitrage-fire)** - Aproveite diferenças regionais ### Passo 4: 📈 Monitore e Otimize Constantemente **📅 Cronograma de revisão:** * **Mensal:** Gastos e aportes * **Trimestral:** Performance dos investimentos * **Semestral:** Estratégia geral e metas * **Anual:** Rebalanceamento completo do portfolio ## ❓ Perguntas Frequentes sobre FIRE no Brasil 2025 ### 1. 🇧🇷 É possível alcançar FIRE no Brasil em 2025? **✅ Resposta:** Absolutamente! O Brasil de 2025 oferece condições excelentes para FIRE. Com a maturidade do mercado financeiro, novas oportunidades de investimento e ferramentas como nossas calculadoras gratuitas, milhares de brasileiros já estão no caminho da independência financeira. ### 2. 🤔 Qual calculadora FIRE devo usar primeiro? **✅ Resposta:** Comece com a [Calculadora FIRE Tradicional](/calculadoras/fire-tradicional) para entender os conceitos básicos. Depois explore [Lean FIRE](/calculadoras/lean-fire) para metas mais rápidas ou [Fat FIRE](/calculadoras/fat-fire) para maior conforto. ### 3. 📈 Como a inflação brasileira afeta meus cálculos? **✅ Resposta:** Nossas calculadoras já consideram rentabilidade real (acima da inflação). Para 2025, recomendamos usar retornos de 10-15% ao ano, que já incluem proteção inflacionária através de ativos como Tesouro IPCA+ e ações. ### 4. 💰 Posso alcançar FIRE com salário médio brasileiro? **✅ Resposta:** Sim! O [Lean FIRE](/calculadoras/lean-fire) é perfeito para quem ganha R$ 5.000-10.000. Com disciplina, muitos brasileiros alcançam independência financeira em 12-18 anos, mesmo com renda média. ### 5. ⏰ Quanto tempo leva para alcançar FIRE no Brasil? **✅ Resposta:** Varia entre 10-25 anos dependendo do perfil. Com nossas calculadoras, você pode simular cenários precisos. Exemplo típico: aportes de 50% da renda + 12% rentabilidade = FIRE em 12-15 anos. ### 6. 🏠 Devo incluir imóveis no planejamento FIRE? **✅ Resposta:** Sim, através de FIIs (Fundos Imobiliários) que oferecem liquidez e renda mensal. Nossa [Calculadora de Dividendos](/calculadoras/simulador-de-rentabilidade-e-dividendos) simula cenários com FIIs perfeitamente. ### 7. 📊 Como as mudanças econômicas afetam o FIRE? **✅ Resposta:** Nossas calculadoras consideram cenários diversos. O FIRE é resiliente a mudanças pois foca em ativos reais e diversificação. Maior razão ainda para começar em 2025! ### 8. 🔄 Posso combinar diferentes estratégias FIRE? **✅ Resposta:** Claro! Muitos começam com [Coast FIRE](/calculadoras/coast-fire), evoluem para [Barista FIRE](/calculadoras/barista-fire) e chegam ao FIRE completo. Use todas as calculadoras para planejar essa evolução. ## 🎉 Conclusão: 2025 é SEU Ano para Conquistar a Independência Financeira O movimento FIRE não é apenas uma tendência - é uma **revolução financeira** que está transformando a vida de milhares de brasileiros. Com nossas calculadoras FIRE gratuitas e interativas, você tem em mãos ferramentas profissionais que transformam sonhos em **planos concretos e atingíveis**. ### 🚀 Por que começar HOJE? **⏰ Tempo é seu maior aliado**\ Cada dia que passa é um dia a menos para os juros compostos trabalharem a seu favor. **🛠️ Ferramentas nunca foram tão acessíveis**\ Nossas 6 calculadoras gratuitas dão acesso a planejamento de nível profissional. **📈 Mercado brasileiro maduro em 2025**\ Condições ideais para investir e crescer patrimônio. ### 🎯 Seus Próximos Passos para a Liberdade Financeira: **📊 1. [Acesse TODAS as calculadoras gratuitamente](/calculadoras)**\ Teste diferentes estratégias e encontre sua ideal. **🎮 2. Simule cenários diversos**\ Use os gráficos interativos para visualizar sua jornada. **💰 3. Comece a investir baseado nos insights**\ Transforme planejamento em ação concreta. **📈 4. Monitore progresso regularmente**\ Use nossas ferramentas para acompanhar sua evolução. ### 💪 Lembre-se: A Jornada FIRE é uma Maratona, não um Sprint A independência financeira no Brasil é **desafiadora, mas totalmente possível**. Com as ferramentas certas, disciplina consistente e estratégia bem definida, você pode construir um futuro financeiro sólido e alcançar a liberdade de escolher como viver sua vida. **Milhares de brasileiros já estão nessa jornada. Você será o próximo?** *** ## 🎯 **COMECE SUA JORNADA FIRE AGORA MESMO!** ### **[🚀 ACESSE AS CALCULADORAS GRATUITAS →](/calculadoras)** **✅ 6 calculadoras FIRE especializadas**\ **✅ Gráficos interativos em tempo real**\ **✅ 100% gratuito e sem cadastro**\ **✅ Resultados em segundos** ### Não deixe para amanhã o que pode mudar sua vida hoje! 🔥 **Sua independência financeira começa com um clique.** # Como a brapi Facilita suas Análises Financeiras 2025: Guia Completo URL: /blog/como-a-brapi-pode-facilitar-suas-analises-financeiras.mdx Descubra como a API brapi pode revolucionar suas análises financeiras! Acesso fácil a dados da B3, módulos avançados e integração simples para desenvolvedores e analistas ✓ *** searchable: true title: 'Como a brapi Facilita suas Análises Financeiras 2025: Guia Completo' description: 'Descubra como a API brapi pode revolucionar suas análises financeiras! Acesso fácil a dados da B3, módulos avançados e integração simples para desenvolvedores e analistas ✓' date: '2025-08-22' keywords: 'API brapi análises, dados financeiros B3, API bolsa Brasil, facilitar análise financeira, módulos brapi, integração API financeira, análise dados mercado' author: 'Equipe brapi.dev' category: 'API e Desenvolvimento' subcategory: 'Guia da Plataforma' readingTime: '9 min' tags: \['brapi', 'API Financeira', 'Análise Facilitada', 'Dados B3', 'Desenvolvimento', 'Integração', 'Plataforma', 'Ferramentas'] relatedPosts: \['como-usar-api-brapi-analise-acoes-guia-completo-desenvolvedores', 'acesso-gratuito-ilimitado-acoes-teste-brapi', 'analise-financeira-com-modulo-balance-sheet-history'] featured: false expertise: 'Equipe brapi.dev especializada em democratização de dados financeiros e facilitar análises de mercado' lastReviewed: '2025-08-22' -------------------------- import { Authors, Author } from '~/components/Authors'; # Como a brapi pode facilitar suas análises financeiras > No mundo atual, impulsionado pela tecnologia e dados, ter acesso a informações > precisas e atualizadas pode ser a chave para tomar decisões financeiras bem > informadas. A brapi, uma inovadora API de dados financeiros, visa facilitar > exatamente isso. ## Entendendo o que é a brapi ### O que é uma API de dados financeiros Uma API de dados financeiros é uma interface que permite a interação entre diferentes softwares, facilitando a obtenção e utilização de dados financeiros. A brapi é uma dessas APIs, especializada em dados financeiros do mercado brasileiro. ### A missão da brapi A missão da brapi é fornecer aos desenvolvedores, empresas financeiras e entusiastas do mercado uma solução abrangente e confiável para impulsionar suas análises e tomadas de decisão financeira. Ela tem como objetivo simplificar o acesso às informações financeiras, tornando-as mais acessíveis e utilizáveis. ## Benefícios de usar a brapi ### Acesso simplificado a informações do mercado de ações Com a brapi, obter dados do mercado de ações IBOVESPA nunca foi tão fácil. A API oferece acesso simplificado a essas informações, permitindo que os usuários obtenham os dados que precisam de maneira eficiente. [Ver API de ações](/docs/acoes) ### Conversão de moedas facilitada A API também oferece um serviço de conversão de moedas, auxiliando na análise de investimentos internacionais e no entendimento da economia global. [Ver API de moedas](/docs/moedas) ### Dados históricos da inflação brasileira ao seu alcance Além disso, a brapi disponibiliza dados históricos da inflação brasileira, um recurso valioso para qualquer análise financeira ou econômica. [Ver API de inflação](/docs/inflacao) ## Como a brapi impulsiona análises financeiras ### Análises aprofundadas do mercado de ações Com a brapi, é possível realizar análises aprofundadas do mercado de ações, obtendo insights valiosos que podem orientar estratégias de investimento. ### Tomada de decisões financeiras informadas Os dados fornecidos pela API auxiliam na tomada de decisões financeiras, fornecendo informações confiáveis e atualizadas que podem influenciar positivamente as decisões financeiras. ### Desbloqueando o poder dos dados financeiros A brapi libera o poder dos dados financeiros, permitindo que os usuários explorem e analisem essas informações de maneira mais eficiente e eficaz. ## Quem pode se beneficiar da brapi ### Desenvolvedores e empresas de finanças Desenvolvedores e empresas financeiras podem utilizar a brapi para aprimorar seus produtos e serviços, oferecendo aos seus clientes acesso a dados financeiros precisos e atualizados. ### Entusiastas do mercado financeiro Entusiastas do mercado financeiro podem utilizar a API para obter insights valiosos e tomar decisões de investimento mais informadas. ## Começando com a brapi ### Como acessar e usar a brapi Acessar e usar a brapi é fácil e intuitivo, tornando-a uma excelente escolha para qualquer pessoa interessada em realizar análises financeiras. Basta acessar a [página inicial](/), criar sua conta e começar a explorar os recursos da API. [Ver documentação completa](/docs) ### Explorando os recursos da brapi A brapi oferece uma variedade de recursos que podem ser explorados para impulsionar análises financeiras e tomadas de decisão. Você pode começar explorando os recursos da API e aplicando-os às suas análises financeiras. ## Conclusão A brapi é uma ferramenta poderosa que pode facilitar suas análises financeiras, fornecendo acesso simplificado a uma variedade de dados financeiros. Seja você um desenvolvedor, uma empresa financeira ou um entusiasta do mercado, a brapi tem algo a oferecer. ## Perguntas Frequentes 1. **P: O que é a brapi?** R: A brapi é uma inovadora API de dados financeiros que oferece acesso simplificado a informações do mercado de ações IBOVESPA, conversão de moedas e dados históricos da inflação brasileira. 2. **P: Quem pode usar a brapi?** R: A brapi pode ser utilizada por desenvolvedores, empresas de finanças e entusiastas do mercado. 3. **P: Como posso começar a usar a brapi?** R: O acesso e uso da brapi é fácil e intuitivo. Você pode começar explorando seus recursos e aplicando-os às suas análises financeiras. 4. **P: Que tipo de dados financeiros posso obter com a brapi?** R: A brapi oferece acesso a informações do mercado de ações IBOVESPA, serviços de conversão de moedas e dados históricos da inflação brasileira. 5. **P: Como a brapi pode impulsionar minhas análises financeiras?** R: A brapi facilita o acesso a uma variedade de dados financeiros, permitindo análises aprofundadas, tomada de decisões informadas e aprimoramento de estratégias de investimento. # Bolsa em Tempo Real 2025: Como Monitorar Cotações e Oportunidades URL: /blog/como-acompanhar-a-bolsa-de-valores-em-tempo-real.mdx Domine o acompanhamento da bolsa em tempo real! Aprenda ferramentas, estratégias, alertas e análise para trading e investimentos na B3. Guia completo ✓ *** searchable: true title: 'Bolsa em Tempo Real 2025: Como Monitorar Cotações e Oportunidades' description: 'Domine o acompanhamento da bolsa em tempo real! Aprenda ferramentas, estratégias, alertas e análise para trading e investimentos na B3. Guia completo ✓' date: '2025-08-22' keywords: 'bolsa tempo real, cotações B3, acompanhar ações, monitoring bolsa, tempo real cotações, análise técnica, alertas ações, mercado brasileiro, brapi' author: 'Equipe brapi.dev' category: 'Trading e Análise' subcategory: 'Monitoramento de Mercado' readingTime: '17 min' tags: \['Tempo Real', 'Bolsa Valores', 'Cotações', 'Trading', 'B3', 'Monitoramento', 'Alertas', 'API'] relatedPosts: \['como-usar-api-brapi-analise-acoes-guia-completo-desenvolvedores', 'analise-fundamentalista-acoes-indicadores-essenciais-investir-b3', 'como-construir-carteira-investimentos-diversificada-brapi'] featured: true expertise: 'Trading e monitoramento de mercado com 8+ anos de experiência' lastReviewed: '2025-08-22' -------------------------- import { Author, Authors } from '~/components/Authors'; # Acompanhamento de Ações na Bolsa de Valores em Tempo Real: O Guia Definitivo > No mundo dos investimentos, o tempo é dinheiro. Acompanhar as cotações em > tempo real é essencial para o sucesso nos investimentos. Neste guia, você > aprenderá como monitorar as cotações da bolsa de valores em tempo real e obter > informações atualizadas e oportunistas para tomadas de decisões estratégicas. ## A Relevância do Monitoramento das Cotações na Bolsa de Valores Em um mundo em que as manchetes econômicas como "Ibovespa bate novo recorde" ou "Dólar desaba para R$ 4,76" são rotineiras, surge a dúvida: como acompanhar a bolsa de valores em tempo real? Este guia detalhado apresentará várias maneiras de monitorar as cotações da bolsa de valores, proporcionando aos investidores e traders informações atualizadas e oportunistas para tomadas de decisões estratégicas. ### As Melhores Ferramentas para Consultar Ações na Bolsa de Valores 1. **Home Brokers** * São plataformas oferecidas por corretoras de valores que permitem acompanhar as cotações em tempo real e realizar negociações de maneira segura. 2. **Sites** * Apesar de alguns apresentarem um pequeno atraso nas cotações, são excelentes para acompanhar as bolsas mundiais. Recomendamos o uso da [brapi.dev](https://brapi.dev/quotes) para obter informações atualizadas. 3. **Plataformas Profissionais** * Comumente utilizadas por traders profissionais, estas plataformas fornecem dados em tempo real, ferramentas analíticas avançadas e garantem a precisão dos dados. 4. **Aplicativos para Smartphones** * As versões móveis das plataformas profissionais oferecem a flexibilidade de acompanhar as cotações em tempo real de qualquer lugar. A [brapi.dev](https://brapi.dev/quotes) oferece uma versão mobile completa. ### Por que Monitorar as Cotações em Tempo Real é Essencial? O mercado financeiro é extremamente volátil e influenciado por eventos globais e notícias. O acompanhamento das cotações em tempo real permite uma resposta rápida a essas variações, minimizando riscos e otimizando as decisões de compra ou venda de ações. ### Acompanhamento do Mercado: Esteja Sempre Alerta! Um exemplo real: ao perceber que as ações da [Gol Linhas Aéreas (GOLL4)](https://brapi.dev/quote/GOLL4) estão em queda, Daniel decide vender rapidamente suas ações para garantir o lucro. O acesso a uma plataforma de cotações precisa e atualizada é crucial para evitar perdas e maximizar os ganhos. ### Esteja Sempre Preparado para as Oscilações do Mercado! As vantagens de usar ferramentas para acompanhar as cotações em tempo real são diversas: * **Oportunidade:** Capacidade de agir imediatamente frente às oportunidades do mercado. * **Prevenção:** Estar preparado para as flutuações do mercado. * **Agilidade:** Agir de maneira rápida e eficiente. * **Conhecimento:** Familiarizar-se com os produtos e movimentos do mercado financeiro. ### Como Escolher a Ferramenta Ideal? A escolha da ferramenta de acompanhamento depende do perfil do investidor. Para aqueles que buscam conveniência, os aplicativos móveis são uma excelente escolha. As Plataformas Profissionais, por outro lado, são indicadas para quem necessita de análises mais profundas. Em resumo, acompanhar a bolsa de valores em tempo real é essencial para o sucesso nos investimentos. Experimente a **brapi** para ter uma experiência completa no monitoramento das cotações, seja no computador ou no smartphone. ### Perguntas Frequentes #### **1. Como acompanhar a bolsa de valores em tempo real?** * Com o uso de Home Brokers, sites, plataformas profissionais ou aplicativos para smartphones, como a **brapi**, você pode acompanhar a bolsa de valores em tempo real. Experimente a [brapi.dev/quotes](https://brapi.dev/quotes) para ter acesso a cotações atualizadas. #### **2. Como consultar ações na bolsa de valores?** * Os Home Brokers e as Plataformas Profissionais são muito eficazes para consultar e negociar ações em tempo real. Recomendamos verificar a lista completa de ações disponível [aqui](https://brapi.dev/quotes). #### **3. Onde posso encontrar a lista de ações por preço?** * Você pode consultar Home Brokers ou Plataformas Profissionais para encontrar listas atualizadas de ações de empresas. Recomendamos verificar a lista disponível [aqui](https://brapi.dev/quotes). #### **4. Como acompanhar a bolsa de valores em tempo real de graça?** * Existem sites e plataformas profissionais que oferecem gráficos de ações em tempo real gratuitamente. Experimente a [brapi.dev/quotes](https://brapi.dev/quotes) para ter acesso a cotações atualizadas. #### **5. Quanto custa uma ação da Klabin?** * Consulte as cotações em tempo real disponíveis em Home Brokers e Plataformas Profissionais para saber o valor atualizado da [ação da Klabin](https://brapi.dev/quote/KLBN11). #### **6. Quanto custa uma ação da Magalu?** * Consulte as cotações em tempo real disponíveis em Home Brokers e Plataformas Profissionais para saber o valor atualizado da [ação da Magazine Luiza (MGLU3)](https://brapi.dev/quote/MGLU3). Experimente agora a **brapi** para ter uma experiência completa no acompanhamento das cotações da bolsa de valores em tempo real. Além disso, a **brapi** oferece acesso a todos os dados do mercado financeiro através de uma API completa e de fácil utilização. Acesse a [documentação](https://brapi.dev/docs) para saber mais. # ROIC 2025: Como Calcular Return on Invested Capital com API URL: /blog/como-calcular-o-roic-usando-a-api-da-brapi.mdx Domine o ROIC para análise de eficiência! Aprenda calcular Return on Invested Capital, interpretar resultados e implementar com API brapi. Guia completo ✓ *** searchable: true title: 'ROIC 2025: Como Calcular Return on Invested Capital com API' description: 'Domine o ROIC para análise de eficiência! Aprenda calcular Return on Invested Capital, interpretar resultados e implementar com API brapi. Guia completo ✓' date: '2025-08-22' keywords: 'ROIC, return on invested capital, retorno capital investido, eficiência capital, análise fundamentalista, API brapi, cálculo ROIC, B3, brapi' author: 'Equipe brapi.dev' category: 'Análise Fundamentalista' subcategory: 'Indicadores de Eficiência' readingTime: '15 min' tags: \['ROIC', 'Análise Fundamentalista', 'Capital', 'Eficiência', 'B3', 'API', 'Cálculo', 'Performance'] relatedPosts: \['roe-return-equity-como-avaliar-eficiencia-gestao-empresarial', 'como-usar-api-brapi-analise-acoes-guia-completo-desenvolvedores', 'analise-fundamentalista-acoes-indicadores-essenciais-investir-b3'] featured: true expertise: 'Análise de eficiência de capital com 8+ anos de experiência no mercado brasileiro' lastReviewed: '2025-08-22' -------------------------- import { Authors, Author } from '~/components/Authors'; # Como Calcular o ROIC Usando a API da brapi > Recentemente, recebemos uma pergunta de um de nossos usuários, que estava > consultando os dados retornados pela nossa API e queria saber se era possível > calcular ou obter a receita líquida e o ROIC (Return on Invested Capital). Mas e aí, dá pra calcular isso com os dados da brapi? A resposta é sim, é possível calcular esses valores usando os dados fornecidos pela API da brapi. Embora não tenhamos um endpoint que faça esses cálculos automaticamente, você pode facilmente pegar os dados necessários e fazer os cálculos por conta própria. ## O que é Receita Líquida e ROIC? A receita líquida é a receita total de uma empresa menos os custos associados à geração dessa receita. Na brapi, acreditamos que a receita líquida pode ser interpretada como a Receita de Venda de Bens e/ou Serviços ou o Resultado Bruto. Esses dados podem ser encontrados no módulo `incomeStatementHistory` da nossa API. O ROIC, por outro lado, é uma métrica que determina a eficiência com que uma empresa está usando seu capital para gerar lucros. É calculado dividindo o NOPAT (Net Operating Profit After Tax) pelo capital investido. ## Como Calcular o ROIC? Para calcular o ROIC, você precisa primeiro calcular o NOPAT e o Capital Investido. ### Cálculo do NOPAT O NOPAT pode ser calculado de duas maneiras: 1. Multiplicando o `operatingIncome` por (1 - tax rate) 2. Subtraindo o `incomeTaxExpense` do `EBIT` Ambos os métodos fornecerão resultados ligeiramente diferentes, mas ambos são aceitáveis. A fórmula para calcular o NOPAT usando o `operatingIncome` é: ```math NOPAT = operatingIncome \times (1 - taxRate) ``` onde `taxRate` é a taxa de imposto efetiva da empresa. ```math taxRate = \frac{incomeTaxExpense}{incomeBeforeTax} ``` E a fórmula para calcular o NOPAT usando o `EBIT` é: ```math NOPAT = EBIT - incomeTaxExpense ``` ### Cálculo do Capital Investido O Capital Investido pode ser calculado subtraindo `accountsPayable` e `cash` do `totalAssets`. A fórmula para calcular o Capital Investido é: ```math CapitalInvestido = totalAssets - accountsPayable - cash ``` ### Cálculo do ROIC Finalmente, o ROIC pode ser calculado dividindo o NOPAT pelo Capital Investido. A fórmula para calcular o ROIC é: ```math ROIC=\frac{NOPAT}{CapitalInvestido} ``` ## Exemplo de Cálculo do ROIC Vamos usar a PETR4 como exemplo. Os dados necessários podem ser encontrados nos módulos `balanceSheetHistory` e `incomeStatementHistory` da nossa API. ### Dados da PETR4 (Petrobras) Acho que essa é parte mais fácil, né? Basta fazer uma requisição para a API da brapi e obter os dados da PETR4. Ex: `https://brapi.dev/api/quote/PETR4?token=SEU_TOKEN&modules=balanceSheetHistory,incomeStatementHistory` ```json curl -X GET "https://brapi.dev/api/quote/AAPL?token=SEU_TOKEN&modules=balanceSheetHistory,incomeStatementHistory" { ... "balanceSheetHistory": { "balanceSheetStatements": [ { "endDate": "2022-12-31T00:00:00.000Z", // Data de Encerramento "cash": 41723000000, // Caixa e Equivalentes de Caixa "shortTermInvestments": 14470000000, // Aplicações Financeiras "netReceivables": 32961000000, // Contas a Receber "inventory": 45804000000, // Estoques "otherCurrentAssets": 28094000000, // Outros Ativos Circulantes "totalCurrentAssets": 163052000000, // Ativo Circulante "longTermInvestments": 16331000000, // Investimentos a Longo Prazo "propertyPlantEquipment": 679182000000, // Imobilizado "goodWill": 123000000, // Goodwill "intangibleAssets": 15458000000, // Ativos Intangíveis "otherAssets": 102563000000, // Outros Ativos "deferredLongTermAssetCharges": 4342000000, // Encargos de Ativos Diferidos a Longo Prazo "totalAssets": 976709000000, // Ativo Total "accountsPayable": 28507000000, // Contas a Pagar "shortLongTermDebt": 18656000000, // Dívida de Curto e Longo Prazo "otherCurrentLiab": 60989000000, // Outras Obrigações Correntes "longTermDebt": 137630000000, // Dívida de Longo Prazo "otherLiab": 215540000000, // Outras Obrigações "minorityInterest": 1791000000, // Interesse Minoritário "totalCurrentLiabilities": 163731000000, // Passivo Circulante "totalLiab": 612324000000, // Passivo Total "commonStock": 205432000000, // Ações Ordinárias "retainedEarnings": 128562000000, // Lucros Retidos "treasuryStock": 28600000000, // Ações em Tesouraria "otherStockholderEquity": 28600000000, // Outros Patrimônios de Acionistas "totalStockholderEquity": 362594000000, // Patrimônio Líquido Total "netTangibleAssets": 347013000000 // Ativos Tangíveis Líquidos } // + outros anos ou trimestres ] }, "incomeStatementHistory": { "incomeStatementHistory": [ { "endDate": "2022-12-31T00:00:00.000Z", // Data de encerramento "totalRevenue": 641256000000, // Receita de Venda de Bens e/ou Serviços "costOfRevenue": 307156000000, // Custo dos Bens e/ou Serviços Vendidos "grossProfit": 334100000000, // Resultado Bruto "researchDevelopment": 4087000000, // Custos com pesquisa e desenvolvimento tecnológico "sellingGeneralAdministrative": 32325000000, // Despesas Gerais e Administrativas "nonRecurring": null, // Perdas pela Não Recuperabilidade de Ativos "otherOperatingExpenses": -10922000000, // Outras Despesas Operacionais "totalOperatingExpenses": 337728000000, // Despesas/Receitas Operacionais "operatingIncome": 303528000000, // Resultado Antes do Resultado Financeiro e dos Tributos "totalOtherIncomeExpenseNet": -28530000000, // Resultado Financeiro "ebit": 303528000000, // Resultado Antes dos Tributos sobre o Lucro (EBIT - Earnigs Before Interest and Taxes) "interestExpense": -13790000000, // Despesas Financeiras "incomeBeforeTax": 274998000000, // Resultado Antes dos Tributos sobre o Lucro "incomeTaxExpense": 85993000000, // Imposto de Renda e Contribuição Social sobre o Lucro "minorityInterest": 1791000000, // Participação de acionistas minoritários "netIncomeFromContinuingOps": 189005000000, // Resultado Líquido das Operações Continuadas "discontinuedOperations": null, // Resultado Líquido de Operações Descontinuadas "extraordinaryItems": null, // Itens Extraordinários "effectOfAccountingCharges": null, // Efeito das Mudanças nas Contas "otherItems": null, // Outros itens "netIncome": 188328000000, // Lucro/Prejuízo do Período (Lucro líquido) "netIncomeApplicableToCommonShares": 188328000000 // Lucro/Prejuízo do Período Atribuído a Sócios da Empresa Controladora } // + outros anos ou trimestres ] } } ``` ### Cálculo do NOPAT #### Usando o `operatingIncome` e `incomeBeforeTax` para calcular o `taxRate` ```math taxRate = \frac{incomeTaxExpense}{incomeBeforeTax} ``` ```math taxRate = \frac{85993000000}{274998000000} ``` ```math taxRate = 0.31272 ``` ```math taxRate = 31.27\% ``` ```math NOPAT = operatingIncome \times (1 - taxRate) ``` ```math NOPAT = 303528000000 \times (1 - 0.31272) ``` ```math NOPAT = 208608723840 ``` #### Usando o `EBIT` e `incomeTaxExpense` para calcular o `NOPAT` ```math NOPAT = EBIT - incomeTaxExpense ``` ```math NOPAT = 303528000000 - 85993000000 ``` ```math NOPAT = 217535000000 ``` ### Cálculo do Capital Investido ```math CapitalInvestido = totalAssets - accountsPayable - cash ``` ```math CapitalInvestido = 976709000000 - 28507000000 - 41723000000 ``` ```math CapitalInvestido = 906479000000 ``` ### Cálculo do ROIC ```math ROIC=\frac{NOPAT}{CapitalInvestido} ``` ```math ROIC=\frac{217535000000}{906479000000} ``` ```math ROIC=0.2401 ``` ```math ROIC=24.01\% ``` ## Conclusão Como você pode ver, é possível calcular o ROIC usando os dados fornecidos pela API da brapi. Embora não tenhamos um endpoint que faça esses cálculos automaticamente, você pode facilmente pegar os dados necessários e fazer os cálculos por conta própria. Também temos o ROA (Return on Assets), o ROE (Return on Equity) e vários outros indicadores já calculados no módulo financialData: ```json { "financialData": { "returnOnAssets": 0.13949001, // Retorno sobre ativos "returnOnEquity": 0.36110002, // Retorno sobre patrimônio líquido "currentPrice": 35.27, // Preço atual "targetHighPrice": 49, // Preço alvo alto "targetLowPrice": 26, // Preço alvo baixo "targetMeanPrice": 38.5, // Preço alvo médio "targetMedianPrice": 38.5, // Preço alvo mediano "recommendationMean": 2.5, // Recomendação média "recommendationKey": "buy", // Recomendação "numberOfAnalystOpinions": 12, // Número de opiniões de analistas "totalCash": 67147001856, // Caixa total "totalCashPerShare": 5.159, // Caixa total por ação "ebitda": 265149005824, // EBITDA - Earnings Before Interest, Taxes, Depreciation and Amortization (Lucro antes de juros, impostos, depreciação e amortização) "totalDebt": 305451008000, // Dívida total "quickRatio": 0.638, // Liquidez imediata "currentRatio": 0.953, // Liquidez corrente "totalRevenue": 536315002880, // Receita total "debtToEquity": 78.828, // Dívida / Patrimônio líquido "revenuePerShare": 41.123, // Receita por ação "grossProfits": 334100000000, // Lucro bruto "freeCashflow": 191622742016, // Fluxo de caixa livre "operatingCashflow": 225613004800, // Fluxo de caixa operacional "earningsGrowth": -0.422, // Crescimento dos lucros "revenueGrowth": -0.266, // Crescimento da receita "grossMargins": 0.51079, // Margem bruta "ebitdaMargins": 0.49438998, // Margem EBITDA "operatingMargins": 0.40989, // Margem operacional "profitMargins": 0.25527, // Margem de lucro "financialCurrency": "BRL" // Moeda } } ``` Temos a documentação dessa parte da API aqui: [https://brapi.dev/docs/acoes#modules-opcional](https://brapi.dev/docs/acoes#modules-opcional) ## Referências * [https://www.investopedia.com/terms/r/returnoninvestmentcapital.asp](https://www.investopedia.com/terms/r/returnoninvestmentcapital.asp) * [https://www.investopedia.com/terms/n/nopat.asp](https://www.investopedia.com/terms/n/nopat.asp) * [https://www.investopedia.com/terms/r/returnonassets.asp](https://www.investopedia.com/terms/r/returnonassets.asp) * [https://www.investopedia.com/terms/r/returnonequity.asp](https://www.investopedia.com/terms/r/returnonequity.asp) * [https://www.gurufocus.com/term/TaxRate/BSP:PETR4/Tax-Rate-/Petroleo-Brasileiro-Petrobras](https://www.gurufocus.com/term/TaxRate/BSP:PETR4/Tax-Rate-/Petroleo-Brasileiro-Petrobras) * [https://www.gurufocus.com/term/ROIC/BSP:PETR4/ROIC-/Petroleo-Brasileiro-SA-Petrobras](https://www.gurufocus.com/term/ROIC/BSP:PETR4/ROIC-/Petroleo-Brasileiro-SA-Petrobras) # Carteira Diversificada 2025: Como Construir Portfolio Eficiente na B3 URL: /blog/como-construir-carteira-investimentos-diversificada-brapi.mdx Domine a construção de carteiras diversificadas! Aprenda alocação estratégica, rebalanceamento e gestão de risco. Guia completo com API brapi.dev para monitoramento ✓ *** searchable: true title: 'Carteira Diversificada 2025: Como Construir Portfolio Eficiente na B3' description: 'Domine a construção de carteiras diversificadas! Aprenda alocação estratégica, rebalanceamento e gestão de risco. Guia completo com API brapi.dev para monitoramento ✓' date: '2025-08-22' keywords: 'carteira investimentos, diversificação, alocação ativos, rebalanceamento, gestão risco, portfolio, ações FIIs, estratégia investimento, B3, brapi' author: 'Equipe brapi.dev' category: 'Gestão de Carteira' subcategory: 'Estratégias de Portfólio' readingTime: '22 min' tags: \['Carteira Investimentos', 'Diversificação', 'Alocação', 'B3', 'Gestão Risco', 'Portfolio', 'Rebalanceamento', 'Asset Allocation'] relatedPosts: \['analise-setorial-acoes-como-comparar-empresas-mesmo-segmento-b3', 'fundos-imobiliarios-fiis-guia-completo-investir-renda-passiva', 'indicadores-economicos-brasil-selic-ipca-igpm-impacto-investimentos'] featured: true expertise: 'Gestão de carteiras com 8+ anos de experiência no mercado brasileiro' lastReviewed: '2025-08-22' -------------------------- import { Authors, Author } from '~/components/Authors'; # Carteira Diversificada 2025: Como Construir Portfolio Eficiente na B3 > A diversificação é a única estratégia comprovada para reduzir riscos sem sacrificar retornos. Aprenda como construir, monitorar e rebalancear uma carteira eficiente usando dados em tempo real da brapi.dev em 2025. *** ## Por Que Diversificação é a Regra de Ouro dos Investimentos? **A diversificação é a única estratégia gratuita para reduzir riscos** sem necessariamente reduzir retornos esperados. Harry Markowitz provou que carteiras bem diversificadas têm melhor relação risco-retorno que ativos individuais. **Exemplo prático:** Uma carteira com 50% Petrobras e 50% Vale pode ter volatilidade maior que uma carteira com 20 ações diferentes de setores diversos. ### Benefícios Comprovados da Diversificação: 1. **Reduz risco específico** de empresas individuais 2. **Minimiza impacto** de crises setoriais 3. **Suaviza volatilidade** da carteira total 4. **Protege** contra ciclos econômicos 5. **Melhora** relação risco-retorno * Setores defensivos vs. cíclicos * Proteção contra inflação e recessão #### 3. **Otimização Risco-Retorno** * Fronteira eficiente de Markowitz * Máximo retorno para cada nível de risco * Sleep well at night factor ## Estrutura de uma Carteira Diversificada ### Modelo Clássico de Alocação ```python carteira_modelo = { 'renda_variavel': { 'acoes_nacionais': 40, # Ações brasileiras 'fiis': 15, # Fundos imobiliários 'acoes_internacionais': 10 # Via ETFs ou BDRs }, 'renda_fixa': { 'tesouro_direto': 20, # Títulos públicos 'cdb_lci_lca': 10, # Renda fixa privada 'fundos_rf': 5 # Fundos de renda fixa } } print("📊 Alocação Total:") for categoria, subcategorias in carteira_modelo.items(): total_categoria = sum(subcategorias.values()) print(f"{categoria.replace('_', ' ').title()}: {total_categoria}%") ``` ### Diversificação por Setor (Ações) ```python def obter_diversificacao_setorial(): """Modelo de diversificação setorial para ações brasileiras""" return { 'financeiro': { 'alvo': 25, 'tickers': ['ITUB4', 'BBDC4', 'BBAS3', 'BBSE3'], 'caracteristicas': 'Dividendos, sensível a juros' }, 'commodities': { 'alvo': 20, 'tickers': ['VALE3', 'PETR4', 'SUZB3', 'USIM5'], 'caracteristicas': 'Cíclico, proteção inflação' }, 'utilities': { 'alvo': 15, 'tickers': ['EGIE3', 'SBSP3', 'CPLE6', 'TAEE11'], 'caracteristicas': 'Defensivo, dividendos estáveis' }, 'consumo': { 'alvo': 15, 'tickers': ['ABEV3', 'BRFS3', 'JBSS3', 'MGLU3'], 'caracteristicas': 'Crescimento, consumo interno' }, 'industrial': { 'alvo': 15, 'tickers': ['WEGE3', 'RAIL3', 'AZUL4', 'EMBR3'], 'caracteristicas': 'Crescimento, tecnologia' }, 'outros': { 'alvo': 10, 'tickers': ['TOTS3', 'RENT3', 'LWSA3', 'HAPV3'], 'caracteristicas': 'Diversificação adicional' } } ``` ## Construindo a Carteira com brapi.dev ### 1. Análise e Seleção de Ativos ```python import requests import pandas as pd from datetime import datetime, timedelta class ConstrutorCarteira: def __init__(self, token): self.token = token self.base_url = "https://brapi.dev/api" def obter_dados_acao(self, ticker): """Obtém dados fundamentalistas de uma ação""" url = f"{self.base_url}/quote/{ticker}?modules=defaultKeyStatistics,financialData&token={self.token}" response = requests.get(url) data = response.json() acao = data['results'][0] stats = acao.get('defaultKeyStatistics', {}) financials = acao.get('financialData', {}) return { 'ticker': ticker, 'nome': acao['shortName'], 'preco': acao['regularMarketPrice'], 'setor': acao.get('sector', 'N/A'), 'pl': stats.get('forwardPE', 0), 'pvp': stats.get('priceToBook', 0), 'dy': stats.get('dividendYield', 0) * 100, 'roe': financials.get('returnOnEquity', 0) * 100, 'margemLiquida': financials.get('profitMargins', 0) * 100, 'marketCap': stats.get('marketCap', 0) / 1e9 } def screening_acoes(self, lista_tickers, criterios): """Faz screening baseado em critérios fundamentalistas""" acoes_aprovadas = [] for ticker in lista_tickers: try: dados = self.obter_dados_acao(ticker) # Aplicar critérios if (dados['pl'] > 0 and dados['pl'] < criterios['pl_max'] and dados['pvp'] > 0 and dados['pvp'] < criterios['pvp_max'] and dados['dy'] > criterios['dy_min'] and dados['roe'] > criterios['roe_min']): # Calcular score de qualidade score = self.calcular_score_qualidade(dados) dados['score'] = score acoes_aprovadas.append(dados) except Exception as e: print(f"Erro ao processar {ticker}: {e}") continue return sorted(acoes_aprovadas, key=lambda x: x['score'], reverse=True) def calcular_score_qualidade(self, dados): """Calcula score de qualidade (0-100)""" score = 0 # P/L baixo é melhor if dados['pl'] < 10: score += 20 elif dados['pl'] < 15: score += 15 elif dados['pl'] < 20: score += 10 # P/VP baixo é melhor if dados['pvp'] < 1: score += 20 elif dados['pvp'] < 1.5: score += 15 elif dados['pvp'] < 2: score += 10 # DY alto é melhor if dados['dy'] > 8: score += 20 elif dados['dy'] > 5: score += 15 elif dados['dy'] > 3: score += 10 # ROE alto é melhor if dados['roe'] > 20: score += 20 elif dados['roe'] > 15: score += 15 elif dados['roe'] > 10: score += 10 # Margem líquida alta é melhor if dados['margemLiquida'] > 20: score += 20 elif dados['margemLiquida'] > 10: score += 15 elif dados['margemLiquida'] > 5: score += 10 return score # Configurar critérios de seleção criterios = { 'pl_max': 20, 'pvp_max': 3, 'dy_min': 2, # 2% mínimo 'roe_min': 10 # 10% mínimo } # Universo de ações para análise universo_acoes = [ # Financeiro 'ITUB4', 'BBDC4', 'BBAS3', 'BBSE3', 'SANB11', 'BPAC11', # Commodities 'VALE3', 'PETR4', 'SUZB3', 'KLBN11', 'GGBR4', 'USIM5', # Utilities 'EGIE3', 'SBSP3', 'CPLE6', 'TAEE11', 'CMIG4', 'ELET3', # Consumo 'ABEV3', 'BRFS3', 'JBSS3', 'MGLU3', 'LREN3', 'AMER3', # Industrial 'WEGE3', 'RAIL3', 'EMBR3', 'AZUL4', 'GOAU4', 'RENT3' ] # Criar instância do construtor construtor = ConstrutorCarteira('SEU_TOKEN') # Fazer screening acoes_selecionadas = construtor.screening_acoes(universo_acoes, criterios) print("🎯 TOP 20 AÇÕES SELECIONADAS:") print("-" * 80) for i, acao in enumerate(acoes_selecionadas[:20], 1): print(f"{i:2d}. {acao['ticker']} - {acao['nome']}") print(f" P/L: {acao['pl']:.1f} | ROE: {acao['roe']:.1f}% | DY: {acao['dy']:.1f}% | Score: {acao['score']:.1f}") ``` ### 2. Seleção de FIIs ```python def analisar_fiis(lista_fiis, token): """Análise específica para Fundos Imobiliários""" fiis_analisados = [] for fii in lista_fiis: try: url = f"https://brapi.dev/api/quote/{fii}?modules=defaultKeyStatistics&token={token}" response = requests.get(url) data = response.json() fii_data = data['results'][0] stats = fii_data.get('defaultKeyStatistics', {}) analise = { 'ticker': fii, 'nome': fii_data['shortName'], 'preco': fii_data['regularMarketPrice'], 'dy': stats.get('dividendYield', 0) * 100, 'pvp': stats.get('priceToBook', 0), 'liquidez': fii_data.get('regularMarketVolume', 0), 'categoria': identificar_categoria_fii(fii_data['shortName']) } fiis_analisados.append(analise) except Exception as e: print(f"Erro ao processar FII {fii}: {e}") continue return sorted(fiis_analisados, key=lambda x: x['dy'], reverse=True) def identificar_categoria_fii(nome): """Identifica categoria do FII baseado no nome""" nome_lower = nome.lower() if any(palavra in nome_lower for palavra in ['shopping', 'mall', 'varejo']): return 'Varejo' elif any(palavra in nome_lower for palavra in ['logístico', 'logistica', 'galpão', 'galpao']): return 'Logístico' elif any(palavra in nome_lower for palavra in ['escritório', 'escritorio', 'corporativo', 'laje']): return 'Corporativo' elif any(palavra in nome_lower for palavra in ['papel', 'renda', 'recebiveis']): return 'Papel' elif any(palavra in nome_lower for palavra in ['híbrido', 'hibrido', 'multi']): return 'Híbrido' else: return 'Outros' # Lista de FIIs para análise fiis_universo = [ 'HGLG11', 'XPML11', 'VISC11', 'MXRF11', 'BTLG11', 'HGRE11', 'XPLG11', 'IRDM11', 'KNRI11', 'KNCR11', 'VILG11', 'MALL11', 'XPCI11', 'ALZR11', 'BCFF11' ] fiis_selecionados = analisar_fiis(fiis_universo, 'SEU_TOKEN') print("🏢 TOP 10 FIIs SELECIONADOS:") print("-" * 60) for i, fii in enumerate(fiis_selecionados[:10], 1): print(f"{i:2d}. {fii['ticker']} - {fii['categoria']}") print(f" DY: {fii['dy']:.2f}% | P/VP: {fii['pvp']:.2f}") ``` ### 3. Montagem da Carteira Final ```python def montar_carteira_otimizada(acoes_selecionadas, fiis_selecionados, valor_total=100000): """Monta carteira otimizada respeitando diversificação setorial""" carteira = { 'valor_total': valor_total, 'alocacao_acoes': valor_total * 0.65, # 65% em ações 'alocacao_fiis': valor_total * 0.15, # 15% em FIIs 'alocacao_rf': valor_total * 0.20, # 20% renda fixa 'posicoes': [] } # Diversificação setorial para ações diversificacao = obter_diversificacao_setorial() acoes_por_setor = agrupar_acoes_por_setor(acoes_selecionadas) # Alocar ações respeitando diversificação setorial for setor, config in diversificacao.items(): valor_setor = carteira['alocacao_acoes'] * (config['alvo'] / 100) acoes_setor = acoes_por_setor.get(setor, []) if acoes_setor: # Selecionar até 2 ações por setor acoes_escolhidas = acoes_setor[:2] valor_por_acao = valor_setor / len(acoes_escolhidas) for acao in acoes_escolhidas: quantidade = int(valor_por_acao / acao['preco']) if quantidade > 0: carteira['posicoes'].append({ 'tipo': 'Ação', 'ticker': acao['ticker'], 'nome': acao['nome'], 'setor': setor, 'quantidade': quantidade, 'preco': acao['preco'], 'valor_investido': quantidade * acao['preco'], 'dy_esperado': acao['dy'] }) # Alocar FIIs com diversificação por categoria categorias_fii = {} for fii in fiis_selecionados: categoria = fii['categoria'] if categoria not in categorias_fii: categorias_fii[categoria] = [] categorias_fii[categoria].append(fii) # Selecionar até 5 FIIs de categorias diferentes fiis_escolhidos = [] for categoria, fiis_categoria in categorias_fii.items(): if len(fiis_escolhidos) < 5: fiis_escolhidos.append(fiis_categoria[0]) # Melhor da categoria if fiis_escolhidos: valor_por_fii = carteira['alocacao_fiis'] / len(fiis_escolhidos) for fii in fiis_escolhidos: quantidade = int(valor_por_fii / fii['preco']) if quantidade > 0: carteira['posicoes'].append({ 'tipo': 'FII', 'ticker': fii['ticker'], 'nome': fii['nome'], 'setor': fii['categoria'], 'quantidade': quantidade, 'preco': fii['preco'], 'valor_investido': quantidade * fii['preco'], 'dy_esperado': fii['dy'] }) # Adicionar renda fixa (simplificado) carteira['posicoes'].append({ 'tipo': 'Renda Fixa', 'ticker': 'TESOURO SELIC', 'nome': 'Tesouro Selic 2029', 'setor': 'Renda Fixa', 'quantidade': 1, 'preco': carteira['alocacao_rf'], 'valor_investido': carteira['alocacao_rf'], 'dy_esperado': 13.5 # Taxa Selic estimada }) return carteira def agrupar_acoes_por_setor(acoes): """Agrupa ações por setor para diversificação""" # Mapeamento simplificado ticker -> setor mapeamento_setor = { 'ITUB4': 'financeiro', 'BBDC4': 'financeiro', 'BBAS3': 'financeiro', 'BBSE3': 'financeiro', 'VALE3': 'commodities', 'PETR4': 'commodities', 'SUZB3': 'commodities', 'KLBN11': 'commodities', 'EGIE3': 'utilities', 'SBSP3': 'utilities', 'CPLE6': 'utilities', 'TAEE11': 'utilities', 'ABEV3': 'consumo', 'BRFS3': 'consumo', 'MGLU3': 'consumo', 'LREN3': 'consumo', 'WEGE3': 'industrial', 'RAIL3': 'industrial', 'EMBR3': 'industrial', 'RENT3': 'industrial' } agrupamento = {} for acao in acoes: setor = mapeamento_setor.get(acao['ticker'], 'outros') if setor not in agrupamento: agrupamento[setor] = [] agrupamento[setor].append(acao) return agrupamento # Montar carteira carteira_final = montar_carteira_otimizada(acoes_selecionadas, fiis_selecionados, 100000) # Exibir resultado print("💼 CARTEIRA MONTADA") print("=" * 70) print(f"Valor Total: R$ {carteira_final['valor_total']:,.2f}") print(f"Ações: R$ {carteira_final['alocacao_acoes']:,.2f} (65%)") print(f"FIIs: R$ {carteira_final['alocacao_fiis']:,.2f} (15%)") print(f"Renda Fixa: R$ {carteira_final['alocacao_rf']:,.2f} (20%)") print("-" * 70) valor_real_investido = sum(pos['valor_investido'] for pos in carteira_final['posicoes']) print(f"Valor Real Investido: R$ {valor_real_investido:,.2f}") print(f"Caixa Restante: R$ {carteira_final['valor_total'] - valor_real_investido:,.2f}") print("\n📋 POSIÇÕES DA CARTEIRA:") print("-" * 70) for pos in carteira_final['posicoes']: participacao = (pos['valor_investido'] / valor_real_investido) * 100 print(f"{pos['tipo']}: {pos['ticker']} - {pos['setor']}") print(f" Qtd: {pos['quantidade']} | Preço: R$ {pos['preco']:.2f} | Total: R$ {pos['valor_investido']:,.2f} ({participacao:.1f}%)") print(f" DY Esperado: {pos['dy_esperado']:.2f}%") print() ``` ## Sistema de Monitoramento da Carteira ### Dashboard de Acompanhamento ```python class MonitorCarteira: def __init__(self, carteira, token): self.carteira = carteira self.token = token self.base_url = "https://brapi.dev/api" def atualizar_precos(self): """Atualiza preços atuais de todas as posições""" tickers_acoes = [pos['ticker'] for pos in self.carteira['posicoes'] if pos['tipo'] in ['Ação', 'FII']] if tickers_acoes: tickers_str = ','.join(tickers_acoes) url = f"{self.base_url}/quote/{tickers_str}?token={self.token}" try: response = requests.get(url) data = response.json() # Criar dicionário de preços atuais precos_atuais = {resultado['symbol']: resultado['regularMarketPrice'] for resultado in data['results']} # Atualizar posições for posicao in self.carteira['posicoes']: if posicao['ticker'] in precos_atuais: posicao['preco_atual'] = precos_atuais[posicao['ticker']] posicao['valor_atual'] = posicao['quantidade'] * posicao['preco_atual'] posicao['resultado'] = posicao['valor_atual'] - posicao['valor_investido'] posicao['rentabilidade'] = (posicao['resultado'] / posicao['valor_investido']) * 100 else: # Para renda fixa, manter valor original posicao['preco_atual'] = posicao['preco'] posicao['valor_atual'] = posicao['valor_investido'] posicao['resultado'] = 0 posicao['rentabilidade'] = 0 except Exception as e: print(f"Erro ao atualizar preços: {e}") def gerar_relatorio_performance(self): """Gera relatório de performance da carteira""" self.atualizar_precos() # Calcular métricas gerais valor_investido_total = sum(pos['valor_investido'] for pos in self.carteira['posicoes']) valor_atual_total = sum(pos.get('valor_atual', pos['valor_investido']) for pos in self.carteira['posicoes']) resultado_total = valor_atual_total - valor_investido_total rentabilidade_total = (resultado_total / valor_investido_total) * 100 # Calcular dividend yield médio dy_ponderado = sum(pos['dy_esperado'] * pos['valor_investido'] for pos in self.carteira['posicoes']) / valor_investido_total relatorio = { 'data_relatorio': datetime.now(), 'valor_investido': valor_investido_total, 'valor_atual': valor_atual_total, 'resultado': resultado_total, 'rentabilidade': rentabilidade_total, 'dy_medio': dy_ponderado, 'posicoes': self.carteira['posicoes'].copy(), 'distribuicao_setorial': self.calcular_distribuicao_setorial(), 'distribuicao_tipo': self.calcular_distribuicao_tipo() } return relatorio def calcular_distribuicao_setorial(self): """Calcula distribuição por setor""" distribuicao = {} valor_total = sum(pos.get('valor_atual', pos['valor_investido']) for pos in self.carteira['posicoes']) for pos in self.carteira['posicoes']: setor = pos['setor'] valor = pos.get('valor_atual', pos['valor_investido']) if setor not in distribuicao: distribuicao[setor] = 0 distribuicao[setor] += valor # Converter para percentual for setor in distribuicao: distribuicao[setor] = (distribuicao[setor] / valor_total) * 100 return dict(sorted(distribuicao.items(), key=lambda x: x[1], reverse=True)) def calcular_distribuicao_tipo(self): """Calcula distribuição por tipo de ativo""" distribuicao = {} valor_total = sum(pos.get('valor_atual', pos['valor_investido']) for pos in self.carteira['posicoes']) for pos in self.carteira['posicoes']: tipo = pos['tipo'] valor = pos.get('valor_atual', pos['valor_investido']) if tipo not in distribuicao: distribuicao[tipo] = 0 distribuicao[tipo] += valor # Converter para percentual for tipo in distribuicao: distribuicao[tipo] = (distribuicao[tipo] / valor_total) * 100 return distribuicao def verificar_necessidade_rebalanceamento(self, tolerancia=5): """Verifica se é necessário rebalancear a carteira""" distribuicao_atual = self.calcular_distribuicao_tipo() # Targets ideais targets = {'Ação': 65, 'FII': 15, 'Renda Fixa': 20} necessita_rebalanceamento = False sugestoes = [] for tipo, target in targets.items(): atual = distribuicao_atual.get(tipo, 0) diferenca = abs(atual - target) if diferenca > tolerancia: necessita_rebalanceamento = True if atual > target: sugestoes.append(f"Reduzir {tipo}: {atual:.1f}% → {target}% (diferença: {diferenca:.1f}%)") else: sugestoes.append(f"Aumentar {tipo}: {atual:.1f}% → {target}% (diferença: {diferenca:.1f}%)") return { 'necessita_rebalanceamento': necessita_rebalanceamento, 'distribuicao_atual': distribuicao_atual, 'targets': targets, 'sugestoes': sugestoes } # Criar monitor da carteira monitor = MonitorCarteira(carteira_final, 'SEU_TOKEN') # Gerar relatório de performance relatorio = monitor.gerar_relatorio_performance() print("📊 RELATÓRIO DE PERFORMANCE") print("=" * 50) print(f"Data: {relatorio['data_relatorio'].strftime('%d/%m/%Y %H:%M')}") print(f"Valor Investido: R$ {relatorio['valor_investido']:,.2f}") print(f"Valor Atual: R$ {relatorio['valor_atual']:,.2f}") print(f"Resultado: R$ {relatorio['resultado']:+,.2f}") print(f"Rentabilidade: {relatorio['rentabilidade']:+.2f}%") print(f"Dividend Yield Médio: {relatorio['dy_medio']:.2f}%") print("\n🏭 DISTRIBUIÇÃO SETORIAL:") for setor, percentual in relatorio['distribuicao_setorial'].items(): print(f" {setor.title()}: {percentual:.1f}%") print("\n📈 DISTRIBUIÇÃO POR TIPO:") for tipo, percentual in relatorio['distribuicao_tipo'].items(): print(f" {tipo}: {percentual:.1f}%") # Verificar necessidade de rebalanceamento rebalanceamento = monitor.verificar_necessidade_rebalanceamento() if rebalanceamento['necessita_rebalanceamento']: print("\n⚖️ REBALANCEAMENTO NECESSÁRIO:") for sugestao in rebalanceamento['sugestoes']: print(f" • {sugestao}") else: print("\n✅ Carteira balanceada - não necessita rebalanceamento") ``` ## Estratégias de Rebalanceamento ### Rebalanceamento Automático ```python def calcular_rebalanceamento(carteira_atual, targets, valor_adicional=0): """Calcula operações necessárias para rebalanceamento""" # Valor total após aportes valor_total_atual = sum(pos.get('valor_atual', pos['valor_investido']) for pos in carteira_atual['posicoes']) valor_total_final = valor_total_atual + valor_adicional # Calcular valores alvo valores_alvo = { 'Ação': valor_total_final * targets['Ação'] / 100, 'FII': valor_total_final * targets['FII'] / 100, 'Renda Fixa': valor_total_final * targets['Renda Fixa'] / 100 } # Calcular valores atuais por tipo valores_atuais = {} for pos in carteira_atual['posicoes']: tipo = pos['tipo'] valor = pos.get('valor_atual', pos['valor_investido']) if tipo not in valores_atuais: valores_atuais[tipo] = 0 valores_atuais[tipo] += valor # Calcular diferenças operacoes = [] for tipo in targets.keys(): atual = valores_atuais.get(tipo, 0) alvo = valores_alvo[tipo] diferenca = alvo - atual if abs(diferenca) > 100: # Só rebalancear diferenças > R$ 100 if diferenca > 0: operacoes.append({ 'tipo': 'COMPRAR', 'categoria': tipo, 'valor': diferenca, 'descricao': f"Comprar R$ {diferenca:,.2f} em {tipo}" }) else: operacoes.append({ 'tipo': 'VENDER', 'categoria': tipo, 'valor': abs(diferenca), 'descricao': f"Vender R$ {abs(diferenca):,.2f} em {tipo}" }) return { 'valores_atuais': valores_atuais, 'valores_alvo': valores_alvo, 'operacoes': operacoes, 'valor_adicional': valor_adicional } # Exemplo de rebalanceamento com aporte targets_ideais = {'Ação': 65, 'FII': 15, 'Renda Fixa': 20} aporte_mensal = 5000 rebal = calcular_rebalanceamento(carteira_final, targets_ideais, aporte_mensal) print("⚖️ PLANO DE REBALANCEAMENTO") print("=" * 50) print(f"Aporte adicional: R$ {rebal['valor_adicional']:,.2f}") print("\nOperações necessárias:") for op in rebal['operacoes']: print(f" {op['tipo']}: {op['descricao']}") ``` ## Alertas e Monitoramento Automatizado ### Sistema de Alertas ```python def configurar_alertas_carteira(carteira, parametros_alerta): """Configura alertas para a carteira""" alertas = { 'queda_posicao': [], # Posições com queda > X% 'concentracao': [], # Posições muito concentradas 'rebalanceamento': [], # Necessidade de rebalanceamento 'dividendos': [] # Próximos pagamentos de dividendos } # Verificar quedas significativas for pos in carteira['posicoes']: if pos.get('rentabilidade', 0) < parametros_alerta['queda_maxima']: alertas['queda_posicao'].append({ 'ticker': pos['ticker'], 'rentabilidade': pos.get('rentabilidade', 0), 'valor_perda': pos.get('resultado', 0) }) # Verificar concentração valor_total = sum(pos.get('valor_atual', pos['valor_investido']) for pos in carteira['posicoes']) for pos in carteira['posicoes']: participacao = (pos.get('valor_atual', pos['valor_investido']) / valor_total) * 100 if participacao > parametros_alerta['concentracao_maxima']: alertas['concentracao'].append({ 'ticker': pos['ticker'], 'participacao': participacao }) return alertas def enviar_alertas_telegram(alertas, bot_token, chat_id): """Envia alertas via Telegram""" import requests if not any(alertas.values()): return # Nenhum alerta para enviar mensagem = "🚨 ALERTAS DA CARTEIRA\n\n" if alertas['queda_posicao']: mensagem += "📉 Quedas Significativas:\n" for alerta in alertas['queda_posicao']: mensagem += f"• {alerta['ticker']}: {alerta['rentabilidade']:+.2f}%\n" mensagem += "\n" if alertas['concentracao']: mensagem += "⚠️ Concentração Excessiva:\n" for alerta in alertas['concentracao']: mensagem += f"• {alerta['ticker']}: {alerta['participacao']:.1f}% da carteira\n" mensagem += "\n" url = f"https://api.telegram.org/bot{bot_token}/sendMessage" payload = { 'chat_id': chat_id, 'text': mensagem, 'parse_mode': 'HTML' } try: requests.post(url, json=payload) print("Alertas enviados via Telegram") except Exception as e: print(f"Erro ao enviar alertas: {e}") # Configurar parâmetros de alerta parametros = { 'queda_maxima': -10, # Alerta se posição cair mais de 10% 'concentracao_maxima': 15 # Alerta se posição > 15% da carteira } alertas = configurar_alertas_carteira(carteira_final, parametros) ``` ## Análise de Performance Histórica ### Backtesting da Estratégia ```python def simular_performance_historica(tickers_carteira, pesos, periodo_anos=3, token=''): """Simula performance histórica da carteira""" from datetime import datetime, timedelta import numpy as np # Buscar dados históricos dados_historicos = {} for ticker in tickers_carteira: url = f"https://brapi.dev/api/quote/{ticker}?range={periodo_anos}y&interval=1mo&token={token}" try: response = requests.get(url) data = response.json() historico = data['results'][0]['historicalDataPrice'] precos = [item['close'] for item in historico] datas = [datetime.fromtimestamp(item['date']) for item in historico] dados_historicos[ticker] = { 'precos': precos, 'datas': datas } except Exception as e: print(f"Erro ao buscar dados de {ticker}: {e}") # Calcular retornos da carteira if not dados_historicos: return None # Alinhar datas (usar intersecção) datas_comuns = set(dados_historicos[list(dados_historicos.keys())[0]]['datas']) for ticker_data in dados_historicos.values(): datas_comuns = datas_comuns.intersection(set(ticker_data['datas'])) datas_ordenadas = sorted(list(datas_comuns)) # Calcular retornos mensais da carteira retornos_carteira = [] for i in range(1, len(datas_ordenadas)): retorno_mensal = 0 for ticker, peso in pesos.items(): if ticker in dados_historicos: data_atual = datas_ordenadas[i] data_anterior = datas_ordenadas[i-1] # Encontrar preços nas datas precos = dados_historicos[ticker]['precos'] datas = dados_historicos[ticker]['datas'] idx_atual = datas.index(data_atual) if data_atual in datas else -1 idx_anterior = datas.index(data_anterior) if data_anterior in datas else -1 if idx_atual >= 0 and idx_anterior >= 0: retorno_ativo = (precos[idx_atual] - precos[idx_anterior]) / precos[idx_anterior] retorno_mensal += retorno_ativo * peso retornos_carteira.append(retorno_mensal) # Calcular métricas de performance retorno_anualizado = (np.prod([1 + r for r in retornos_carteira]) ** (12 / len(retornos_carteira))) - 1 volatilidade_anualizada = np.std(retornos_carteira) * np.sqrt(12) sharpe_ratio = retorno_anualizado / volatilidade_anualizada if volatilidade_anualizada > 0 else 0 # Drawdown máximo patrimonio_acumulado = [10000] # Valor inicial for retorno in retornos_carteira: patrimonio_acumulado.append(patrimonio_acumulado[-1] * (1 + retorno)) picos = [patrimonio_acumulado[0]] for valor in patrimonio_acumulado[1:]: picos.append(max(picos[-1], valor)) drawdowns = [(patrimonio_acumulado[i] - picos[i]) / picos[i] for i in range(len(patrimonio_acumulado))] max_drawdown = min(drawdowns) return { 'retorno_anualizado': retorno_anualizado * 100, 'volatilidade_anualizada': volatilidade_anualizada * 100, 'sharpe_ratio': sharpe_ratio, 'max_drawdown': max_drawdown * 100, 'retornos_mensais': retornos_carteira, 'patrimonio_final': patrimonio_acumulado[-1] } # Simular performance da carteira montada pesos_carteira = {} valor_total = sum(pos['valor_investido'] for pos in carteira_final['posicoes']) for pos in carteira_final['posicoes']: if pos['tipo'] in ['Ação', 'FII']: peso = pos['valor_investido'] / valor_total pesos_carteira[pos['ticker']] = peso performance = simular_performance_historica(list(pesos_carteira.keys()), pesos_carteira, 3, 'SEU_TOKEN') if performance: print("📈 PERFORMANCE HISTÓRICA (3 anos)") print("=" * 40) print(f"Retorno Anualizado: {performance['retorno_anualizado']:+.2f}%") print(f"Volatilidade: {performance['volatilidade_anualizada']:.2f}%") print(f"Sharpe Ratio: {performance['sharpe_ratio']:.2f}") print(f"Drawdown Máximo: {performance['max_drawdown']:+.2f}%") print(f"R$ 10.000 viraram: R$ {performance['patrimonio_final']:,.2f}") ``` ## Conclusão Construir uma carteira diversificada é um processo contínuo que requer disciplina, acompanhamento e rebalanceamento periódico. Com as ferramentas da brapi.dev, é possível: ### Vantagens da Abordagem Sistemática: 1. **Redução de Riscos**: Diversificação eficiente entre setores e ativos 2. **Monitoramento Automático**: Acompanhamento em tempo real da performance 3. **Rebalanceamento Inteligente**: Manutenção das alocações ideais 4. **Análise Baseada em Dados**: Decisões fundamentadas em métricas objetivas ### Próximos Passos: * **[Crie sua conta](/dashboard)** na brapi.dev para acessar dados completos * **Implemente os códigos** apresentados neste guia * **Adapte as estratégias** ao seu perfil de risco * **Monitore regularmente** sua carteira ### Recursos Adicionais: * **[Documentação completa](/docs)** da API * **[Dados históricos](/docs)** para backtesting * **[Exemplos práticos](/docs/examples)** de implementação **Lembre-se**: Diversificação não elimina riscos, mas os reduz significativamente. Sempre invista apenas o que pode perder e mantenha uma reserva de emergência adequada! # API brapi.dev 2025: Guia Completo para Desenvolvedores de FinTech URL: /blog/como-usar-api-brapi-analise-acoes-guia-completo-desenvolvedores.mdx Domine a API brapi.dev! Tutorial completo para desenvolvedores: cotações tempo real, análise fundamentalista, integração JavaScript/Python. Documentação prática ✓ *** searchable: true title: 'API brapi.dev 2025: Guia Completo para Desenvolvedores de FinTech' description: 'Domine a API brapi.dev! Tutorial completo para desenvolvedores: cotações tempo real, análise fundamentalista, integração JavaScript/Python. Documentação prática ✓' date: '2025-08-22' keywords: 'API brapi.dev, dados financeiros brasil, análise ações API, integração JavaScript Python, cotações tempo real, B3, desenvolvimento financeiro, brapi' author: 'Equipe brapi.dev' category: 'Desenvolvimento e APIs' subcategory: 'Tutoriais de Integração' readingTime: '28 min' tags: \['API', 'Desenvolvimento', 'Integração', 'Dados Financeiros', 'B3', 'JavaScript', 'Python', 'FinTech'] relatedPosts: \['como-calcular-o-roic-usando-a-api-da-brapi', 'como-acompanhar-a-bolsa-de-valores-em-tempo-real', 'demonstrativos-financeiros-um-olhar-detalhado-na-saude-financeira-da-empresa'] featured: true expertise: 'Desenvolvimento de aplicações financeiras com 8+ anos de experiência' lastReviewed: '2025-08-22' -------------------------- import { Authors, Author } from '~/components/Authors'; # Como Usar a API da brapi.dev para Análise de Ações: Guia Completo para Desenvolvedores > A API da brapi.dev é a solução mais completa para acessar dados financeiros do mercado brasileiro. Neste guia, você aprenderá como integrar nossa API em suas aplicações, desde consultas básicas até análises avançadas de ações, FIIs e criptomoedas. *** ## Por que Escolher a API da brapi.dev? A [API da brapi.dev](/docs) oferece acesso simplificado e confiável aos dados financeiros do mercado brasileiro, eliminando a complexidade de coletar e processar informações de múltiplas fontes. ### Principais Vantagens #### 1. **Dados Abrangentes** * ✅ Ações da B3 (Bovespa) * ✅ Fundos Imobiliários (FIIs) * ✅ Índices (Ibovespa, IFIX, etc.) * ✅ Criptomoedas * ✅ Moedas e câmbio * ✅ Indicadores econômicos (IPCA, SELIC, IGP-M) #### 2. **Facilidade de Integração** * API REST simples e intuitiva * Documentação completa * Exemplos em múltiplas linguagens * SDKs oficiais disponíveis #### 3. **Dados Confiáveis** * Fontes oficiais (B3, CVM, Banco Central) * Atualizações em tempo real * Histórico completo disponível * 99.9% de uptime ## Começando com a API ### 1. Obtendo sua Chave de API Primeiro, [crie sua conta gratuita](https://brapi.dev/dashboard) na brapi.dev: ```bash # Teste básico sem autenticação (limitado) curl "https://brapi.dev/api/quote/PETR4" # Com token de acesso (recomendado) curl "https://brapi.dev/api/quote/PETR4?token=SEU_TOKEN" ``` ### 2. Estrutura Básica das Respostas Todas as respostas seguem um padrão consistente: ```json { "results": [ { "symbol": "PETR4", "shortName": "PETROBRAS PN", "longName": "Petróleo Brasileiro S.A. - Petrobras", "currency": "BRL", "regularMarketPrice": 35.20, "regularMarketDayHigh": 35.85, "regularMarketDayLow": 34.90, "regularMarketVolume": 42858200, "regularMarketChange": 0.15, "regularMarketChangePercent": 0.427, "validRanges": ["1d", "5d", "1mo", "3mo", "6mo", "1y", "2y", "5y", "10y", "ytd", "max"], "validIntervals": ["1m", "2m", "5m", "15m", "30m", "60m", "90m", "1h", "1d", "5d", "1wk", "1mo", "3mo"] } ], "requestedAt": "2024-01-21T10:30:00.000Z", "took": "45ms" } ``` ## Consultas Básicas de Ações ### Cotação Atual ```javascript // JavaScript/Node.js const obterCotacao = async (ticker) => { try { const response = await fetch(`https://brapi.dev/api/quote/${ticker}?token=SEU_TOKEN`); const data = await response.json(); const acao = data.results[0]; return { simbolo: acao.symbol, preco: acao.regularMarketPrice, variacao: acao.regularMarketChangePercent, volume: acao.regularMarketVolume, atualizadoEm: data.requestedAt }; } catch (error) { console.error('Erro ao buscar cotação:', error); } }; // Exemplo de uso const petr4 = await obterCotacao('PETR4'); console.log(`${petr4.simbolo}: R$ ${petr4.preco} (${petr4.variacao.toFixed(2)}%)`); ``` ### Múltiplas Ações ```python # Python import requests import json def obter_multiplas_cotacoes(tickers, token): """Obtém cotações de múltiplas ações em uma única requisição""" tickers_str = ','.join(tickers) url = f"https://brapi.dev/api/quote/{tickers_str}?token={token}" response = requests.get(url) data = response.json() cotacoes = {} for acao in data['results']: cotacoes[acao['symbol']] = { 'preco': acao['regularMarketPrice'], 'variacao': acao['regularMarketChangePercent'], 'volume': acao['regularMarketVolume'] } return cotacoes # Exemplo de uso tickers = ['PETR4', 'VALE3', 'ITUB4', 'BBDC4'] token = 'SEU_TOKEN' cotacoes = obter_multiplas_cotacoes(tickers, token) for ticker, dados in cotacoes.items(): print(f"{ticker}: R$ {dados['preco']:.2f} ({dados['variacao']:+.2f}%)") ``` ## Dados Históricos e Gráficos ### Consultando Histórico OHLCV ```javascript const obterHistorico = async (ticker, periodo = '1y', intervalo = '1d') => { const url = `https://brapi.dev/api/quote/${ticker}?range=${periodo}&interval=${intervalo}&token=SEU_TOKEN`; const response = await fetch(url); const data = await response.json(); const acao = data.results[0]; return { symbol: acao.symbol, historicalDataPrice: acao.historicalDataPrice.map(item => ({ date: new Date(item.date * 1000), open: item.open, high: item.high, low: item.low, close: item.close, volume: item.volume, adjustedClose: item.adjustedClose })) }; }; // Criando gráfico com Chart.js const criarGrafico = async (ticker) => { const dados = await obterHistorico(ticker, '6mo', '1d'); const ctx = document.getElementById('grafico').getContext('2d'); new Chart(ctx, { type: 'line', data: { labels: dados.historicalDataPrice.map(d => d.date.toLocaleDateString()), datasets: [{ label: ticker, data: dados.historicalDataPrice.map(d => d.close), borderColor: 'rgb(75, 192, 192)', tension: 0.1 }] }, options: { responsive: true, scales: { y: { beginAtZero: false } } } }); }; ``` ### Análise Técnica Básica ```python import pandas as pd import numpy as np def calcular_medias_moveis(ticker, token): """Calcula médias móveis e indicadores técnicos""" # Obter dados históricos url = f"https://brapi.dev/api/quote/{ticker}?range=1y&interval=1d&token={token}" response = requests.get(url) data = response.json() # Converter para DataFrame historico = data['results'][0]['historicalDataPrice'] df = pd.DataFrame(historico) df['date'] = pd.to_datetime(df['date'], unit='s') df.set_index('date', inplace=True) # Calcular médias móveis df['MM9'] = df['close'].rolling(window=9).mean() df['MM21'] = df['close'].rolling(window=21).mean() df['MM50'] = df['close'].rolling(window=50).mean() df['MM200'] = df['close'].rolling(window=200).mean() # RSI delta = df['close'].diff() gain = (delta.where(delta > 0, 0)).rolling(window=14).mean() loss = (-delta.where(delta < 0, 0)).rolling(window=14).mean() rs = gain / loss df['RSI'] = 100 - (100 / (1 + rs)) # Bandas de Bollinger df['BB_MA'] = df['close'].rolling(window=20).mean() bb_std = df['close'].rolling(window=20).std() df['BB_Upper'] = df['BB_MA'] + (bb_std * 2) df['BB_Lower'] = df['BB_MA'] - (bb_std * 2) return df # Exemplo de uso df_petr4 = calcular_medias_moveis('PETR4', 'SEU_TOKEN') print(f"RSI atual PETR4: {df_petr4['RSI'].iloc[-1]:.2f}") ``` ## Módulos Avançados da API ### Dados Fundamentalistas A brapi.dev oferece módulos especializados para análise fundamentalista: ```javascript const obterDadosFundamentalistas = async (ticker) => { const modules = [ 'defaultKeyStatistics', 'financialData', 'summaryProfile', 'balanceSheetHistory', 'incomeStatementHistory' ].join(','); const url = `https://brapi.dev/api/quote/${ticker}?modules=${modules}&token=SEU_TOKEN`; const response = await fetch(url); const data = await response.json(); const acao = data.results[0]; return { empresa: { nome: acao.longName, setor: acao.summaryProfile?.sector, industria: acao.summaryProfile?.industry, funcionarios: acao.summaryProfile?.fullTimeEmployees, site: acao.summaryProfile?.website }, indicadores: { pl: acao.defaultKeyStatistics?.forwardPE, pvp: acao.defaultKeyStatistics?.priceToBook, dy: acao.defaultKeyStatistics?.dividendYield, roe: acao.financialData?.returnOnEquity, roa: acao.financialData?.returnOnAssets, margemLiquida: acao.financialData?.profitMargins }, valuation: { marketCap: acao.defaultKeyStatistics?.marketCap, enterpriseValue: acao.defaultKeyStatistics?.enterpriseValue, evEbitda: acao.defaultKeyStatistics?.enterpriseToEbitda, pegRatio: acao.defaultKeyStatistics?.pegRatio } }; }; // Exemplo de uso const analise = await obterDadosFundamentalistas('EGIE3'); console.log('Análise Fundamentalista EGIE3:'); console.log(`ROE: ${(analise.indicadores.roe * 100).toFixed(1)}%`); console.log(`P/L: ${analise.indicadores.pl?.toFixed(1)}x`); console.log(`DY: ${(analise.indicadores.dy * 100).toFixed(1)}%`); ``` ### Screening de Ações ```python def screening_acoes(criterios, token): """ Faz screening de ações baseado em critérios fundamentalistas """ # Lista de ações para analisar (top 100 por volume) tickers = [ 'PETR4', 'VALE3', 'ITUB4', 'BBDC4', 'ABEV3', 'BBAS3', 'WEGE3', 'EGIE3', 'RENT3', 'LREN3', 'MGLU3', 'RAIL3', 'VIVT3', 'KLBN11', 'SBSP3', 'CPLE6', 'GGBR4', 'USIM5', 'SUZB3', 'TOTS3', 'ASAI3', 'PRIO3', 'RDOR3', 'HAPV3' ] oportunidades = [] modules = 'defaultKeyStatistics,financialData' for ticker in tickers: try: url = f"https://brapi.dev/api/quote/{ticker}?modules={modules}&token={token}" response = requests.get(url) data = response.json() acao = data['results'][0] # Extrair indicadores stats = acao.get('defaultKeyStatistics', {}) financials = acao.get('financialData', {}) pl = stats.get('forwardPE', 0) pvp = stats.get('priceToBook', 0) dy = stats.get('dividendYield', 0) roe = financials.get('returnOnEquity', 0) # Aplicar critérios if (pl > 0 and pl < criterios['pl_max'] and pvp > 0 and pvp < criterios['pvp_max'] and dy > criterios['dy_min'] and roe > criterios['roe_min']): oportunidades.append({ 'ticker': ticker, 'nome': acao['shortName'], 'preco': acao['regularMarketPrice'], 'pl': pl, 'pvp': pvp, 'dy': dy * 100, 'roe': roe * 100, 'score': calcular_score(pl, pvp, dy, roe) }) except Exception as e: print(f"Erro ao processar {ticker}: {e}") continue # Ordenar por score return sorted(oportunidades, key=lambda x: x['score'], reverse=True) def calcular_score(pl, pvp, dy, roe): """Calcula score de atratividade (0-100)""" score = 0 # P/L baixo é melhor if pl < 10: score += 25 elif pl < 15: score += 15 elif pl < 20: score += 5 # P/VP baixo é melhor if pvp < 1: score += 25 elif pvp < 1.5: score += 15 elif pvp < 2: score += 5 # DY alto é melhor if dy > 0.08: score += 25 elif dy > 0.05: score += 15 elif dy > 0.03: score += 5 # ROE alto é melhor if roe > 0.20: score += 25 elif roe > 0.15: score += 15 elif roe > 0.10: score += 5 return score # Exemplo de uso criterios = { 'pl_max': 15, 'pvp_max': 2, 'dy_min': 0.03, # 3% 'roe_min': 0.10 # 10% } resultados = screening_acoes(criterios, 'SEU_TOKEN') print("🎯 Top 10 Oportunidades:") for i, acao in enumerate(resultados[:10], 1): print(f"{i:2d}. {acao['ticker']} - {acao['nome']}") print(f" Preço: R$ {acao['preco']:.2f} | P/L: {acao['pl']:.1f} | DY: {acao['dy']:.1f}% | Score: {acao['score']}") ``` ## Integrações Avançadas ### Dashboard em React ```jsx import React, { useState, useEffect } from 'react'; import { LineChart, Line, XAxis, YAxis, CartesianGrid, Tooltip, Legend } from 'recharts'; const DashboardAcoes = () => { const [watchlist, setWatchlist] = useState(['PETR4', 'VALE3', 'ITUB4']); const [cotacoes, setCotacoes] = useState([]); const [loading, setLoading] = useState(true); useEffect(() => { const buscarCotacoes = async () => { try { const tickers = watchlist.join(','); const response = await fetch(`https://brapi.dev/api/quote/${tickers}?token=${process.env.REACT_APP_BRAPI_TOKEN}`); const data = await response.json(); setCotacoes(data.results.map(acao => ({ symbol: acao.symbol, name: acao.shortName, price: acao.regularMarketPrice, change: acao.regularMarketChange, changePercent: acao.regularMarketChangePercent, volume: acao.regularMarketVolume }))); } catch (error) { console.error('Erro ao buscar cotações:', error); } finally { setLoading(false); } }; buscarCotacoes(); const interval = setInterval(buscarCotacoes, 60000); // Atualizar a cada minuto return () => clearInterval(interval); }, [watchlist]); const adicionarAcao = (ticker) => { if (!watchlist.includes(ticker)) { setWatchlist([...watchlist, ticker]); } }; if (loading) return Carregando...; return (); }; export default DashboardAcoes; ``` ### Webhook para Alertas ```python from flask import Flask, request, jsonify import requests import json app = Flask(__name__) def verificar_alertas(): """Verifica condições de alerta nas ações monitoradas""" alertas = [] watchlist = [ {'ticker': 'PETR4', 'preco_alvo': 40.00, 'tipo': 'acima'}, {'ticker': 'VALE3', 'preco_alvo': 60.00, 'tipo': 'abaixo'}, {'ticker': 'ITUB4', 'preco_alvo': 25.00, 'tipo': 'acima'} ] for alerta in watchlist: ticker = alerta['ticker'] url = f"https://brapi.dev/api/quote/{ticker}?token=SEU_TOKEN" response = requests.get(url) data = response.json() acao = data['results'][0] preco_atual = acao['regularMarketPrice'] preco_alvo = alerta['preco_alvo'] disparar = False if alerta['tipo'] == 'acima' and preco_atual >= preco_alvo: disparar = True elif alerta['tipo'] == 'abaixo' and preco_atual <= preco_alvo: disparar = True if disparar: alertas.append({ 'ticker': ticker, 'preco_atual': preco_atual, 'preco_alvo': preco_alvo, 'tipo': alerta['tipo'], 'variacao': acao['regularMarketChangePercent'] }) return alertas def enviar_telegram(mensagem): """Envia alerta via Telegram""" bot_token = 'SEU_BOT_TOKEN' chat_id = 'SEU_CHAT_ID' url = f"https://api.telegram.org/bot{bot_token}/sendMessage" payload = { 'chat_id': chat_id, 'text': mensagem, 'parse_mode': 'HTML' } requests.post(url, json=payload) @app.route('/check-alerts', methods=['GET']) def check_alerts(): """Endpoint para verificar alertas""" alertas = verificar_alertas() if alertas: for alerta in alertas: mensagem = f""" 🚨 ALERTA DE PREÇO 📊 {alerta['ticker']} 💰 Preço atual: R$ {alerta['preco_atual']:.2f} 🎯 Preço alvo: R$ {alerta['preco_alvo']:.2f} 📈 Variação: {alerta['variacao']:+.2f}% Condição: Preço {alerta['tipo']} do alvo """ enviar_telegram(mensagem) return jsonify({ 'alertas_disparados': len(alertas), 'alertas': alertas }) if __name__ == '__main__': app.run(debug=True) ``` ## Exemplos de Aplicações Práticas ### 1. Bot de Trading Automatizado ```python import time import pandas as pd from datetime import datetime, timedelta class BotTradingBrapi: def __init__(self, token, telegram_token=None): self.token = token self.telegram_token = telegram_token self.posicoes = {} self.historico_ordens = [] def obter_dados_acao(self, ticker, periodo='1mo'): """Obtém dados históricos para análise""" url = f"https://brapi.dev/api/quote/{ticker}?range={periodo}&interval=1d&token={self.token}" response = requests.get(url) data = response.json() historico = data['results'][0]['historicalDataPrice'] df = pd.DataFrame(historico) df['date'] = pd.to_datetime(df['date'], unit='s') return df def calcular_sinais(self, df): """Calcula sinais de compra/venda usando médias móveis""" df['MM9'] = df['close'].rolling(9).mean() df['MM21'] = df['close'].rolling(21).mean() # Sinal de compra: MM9 cruza MM21 para cima df['sinal_compra'] = (df['MM9'] > df['MM21']) & (df['MM9'].shift(1) <= df['MM21'].shift(1)) # Sinal de venda: MM9 cruza MM21 para baixo df['sinal_venda'] = (df['MM9'] < df['MM21']) & (df['MM9'].shift(1) >= df['MM21'].shift(1)) return df def verificar_oportunidades(self, watchlist): """Verifica oportunidades na watchlist""" oportunidades = [] for ticker in watchlist: df = self.obter_dados_acao(ticker) df = self.calcular_sinais(df) ultimo_sinal_compra = df[df['sinal_compra']].iloc[-1:] if len(df[df['sinal_compra']]) > 0 else None ultimo_sinal_venda = df[df['sinal_venda']].iloc[-1:] if len(df[df['sinal_venda']]) > 0 else None # Verificar se há sinal recente (últimos 3 dias) tres_dias_atras = datetime.now() - timedelta(days=3) if ultimo_sinal_compra is not None: data_sinal = ultimo_sinal_compra['date'].iloc[0] if data_sinal >= tres_dias_atras: oportunidades.append({ 'ticker': ticker, 'acao': 'COMPRA', 'preco': df['close'].iloc[-1], 'data_sinal': data_sinal }) if ultimo_sinal_venda is not None: data_sinal = ultimo_sinal_venda['date'].iloc[0] if data_sinal >= tres_dias_atras: oportunidades.append({ 'ticker': ticker, 'acao': 'VENDA', 'preco': df['close'].iloc[-1], 'data_sinal': data_sinal }) return oportunidades def executar_estrategia(self): """Executa a estratégia de trading""" watchlist = ['PETR4', 'VALE3', 'ITUB4', 'BBDC4', 'WEGE3'] oportunidades = self.verificar_oportunidades(watchlist) for opp in oportunidades: if opp['acao'] == 'COMPRA' and opp['ticker'] not in self.posicoes: print(f"🟢 SINAL DE COMPRA: {opp['ticker']} a R$ {opp['preco']:.2f}") # Aqui integraria com broker para execução real elif opp['acao'] == 'VENDA' and opp['ticker'] in self.posicoes: print(f"🔴 SINAL DE VENDA: {opp['ticker']} a R$ {opp['preco']:.2f}") # Aqui integraria com broker para execução real return oportunidades # Uso do bot bot = BotTradingBrapi('SEU_TOKEN') while True: oportunidades = bot.executar_estrategia() time.sleep(300) # Aguardar 5 minutos ``` ### 2. Relatório Automatizado de Carteira ```python def gerar_relatorio_carteira(carteira, token): """Gera relatório completo da carteira""" relatorio = { 'data_relatorio': datetime.now().strftime('%d/%m/%Y %H:%M'), 'total_investido': 0, 'valor_atual': 0, 'resultado_total': 0, 'rendimento_percentual': 0, 'acoes': [] } for item in carteira: ticker = item['ticker'] quantidade = item['quantidade'] preco_medio = item['preco_medio'] # Buscar cotação atual url = f"https://brapi.dev/api/quote/{ticker}?modules=defaultKeyStatistics&token={token}" response = requests.get(url) data = response.json() acao = data['results'][0] preco_atual = acao['regularMarketPrice'] dy = acao.get('defaultKeyStatistics', {}).get('dividendYield', 0) or 0 # Calcular métricas investido = quantidade * preco_medio valor_atual = quantidade * preco_atual resultado = valor_atual - investido rendimento = (resultado / investido) * 100 relatorio['total_investido'] += investido relatorio['valor_atual'] += valor_atual relatorio['resultado_total'] += resultado relatorio['acoes'].append({ 'ticker': ticker, 'nome': acao['shortName'], 'quantidade': quantidade, 'preco_medio': preco_medio, 'preco_atual': preco_atual, 'investido': investido, 'valor_atual': valor_atual, 'resultado': resultado, 'rendimento_percentual': rendimento, 'dividend_yield': dy * 100, 'participacao': 0 # Será calculado depois }) # Calcular rendimento total e participações if relatorio['total_investido'] > 0: relatorio['rendimento_percentual'] = (relatorio['resultado_total'] / relatorio['total_investido']) * 100 for acao in relatorio['acoes']: acao['participacao'] = (acao['valor_atual'] / relatorio['valor_atual']) * 100 return relatorio def formatar_relatorio_html(relatorio): """Converte relatório para HTML""" html = f"""Dashboard de Ações
Watchlist
{cotacoes.map(acao => ())}{acao.symbol}
{acao.name}
R$ {acao.price.toFixed(2)}
= 0 ? 'positiva' : 'negativa'}`}> {acao.changePercent >= 0 ? '+' : ''}{acao.changePercent.toFixed(2)}%
Vol: {(acao.volume / 1000000).toFixed(1)}M
{ if (e.key === 'Enter') { adicionarAcao(e.target.value.toUpperCase()); e.target.value = ''; } }} />Relatório de Carteira - {relatorio['data_relatorio']} Relatório de Carteira
{relatorio['data_relatorio']}
Resumo Geral
Total Investido: R$ {relatorio['total_investido']:,.2f}
Valor Atual: R$ {relatorio['valor_atual']:,.2f}
Resultado: R$ {relatorio['resultado_total']:+,.2f} ({relatorio['rendimento_percentual']:+.2f}%)
Detalhamento por Ação
""" return html # Exemplo de uso carteira_exemplo = [ {'ticker': 'PETR4', 'quantidade': 100, 'preco_medio': 32.50}, {'ticker': 'VALE3', 'quantidade': 50, 'preco_medio': 65.80}, {'ticker': 'ITUB4', 'quantidade': 200, 'preco_medio': 24.30}, {'ticker': 'WEGE3', 'quantidade': 80, 'preco_medio': 45.20} ] relatorio = gerar_relatorio_carteira(carteira_exemplo, 'SEU_TOKEN') html = formatar_relatorio_html(relatorio) # Salvar relatório with open(f"relatorio_carteira_{datetime.now().strftime('%Y%m%d')}.html", 'w', encoding='utf-8') as f: f.write(html) print("Relatório gerado com sucesso!") ``` ## Monitoramento e Performance ### Rate Limits e Otimização ```javascript class BrapiClient { constructor(token) { this.token = token; this.baseURL = 'https://brapi.dev/api'; this.requestQueue = []; this.processing = false; this.rateLimit = 100; // requests por minuto this.requestInterval = 60000 / this.rateLimit; // ms entre requests } async request(endpoint, params = {}) { return new Promise((resolve, reject) => { this.requestQueue.push({ endpoint, params, resolve, reject }); this.processQueue(); }); } async processQueue() { if (this.processing || this.requestQueue.length === 0) return; this.processing = true; while (this.requestQueue.length > 0) { const { endpoint, params, resolve, reject } = this.requestQueue.shift(); try { const queryParams = new URLSearchParams({ token: this.token, ...params }); const response = await fetch(`${this.baseURL}${endpoint}?${queryParams}`); const data = await response.json(); resolve(data); } catch (error) { reject(error); } // Respeitar rate limit await new Promise(resolve => setTimeout(resolve, this.requestInterval)); } this.processing = false; } async quote(ticker, modules = []) { const params = modules.length > 0 ? { modules: modules.join(',') } : {}; return this.request(`/quote/${ticker}`, params); } async multipleQuotes(tickers, modules = []) { const tickerString = Array.isArray(tickers) ? tickers.join(',') : tickers; const params = modules.length > 0 ? { modules: modules.join(',') } : {}; return this.request(`/quote/${tickerString}`, params); } } // Uso do cliente otimizado const client = new BrapiClient('SEU_TOKEN'); // Requests serão automaticamente enfileirados e respeitarão rate limits const petr4 = await client.quote('PETR4', ['defaultKeyStatistics']); const multiplas = await client.multipleQuotes(['VALE3', 'ITUB4', 'BBDC4']); ``` ## Conclusão A API da brapi.dev oferece uma solução completa e confiável para desenvolvedores que precisam integrar dados financeiros do mercado brasileiro em suas aplicações. Com documentação clara, múltiplos módulos especializados e exemplos práticos, é possível construir desde dashboards simples até sistemas complexos de análise e trading. ### Próximos Passos: 1. **[Crie sua conta](/dashboard)** e obtenha seu token de acesso 2. **Explore a [documentação completa](/docs)** com todos os endpoints 3. **Teste os exemplos** deste guia em suas aplicações 4. **Acesse nossa [plataforma](/quotes)** para análises interativas ### Recursos Adicionais: * **[Exemplos de integração](/docs/examples)** em múltiplas linguagens * **[Status da API](https://status.brapi.dev)** para monitoramento * **[Suporte técnico](mailto:contato@brapi.dev)** para dúvidas específicas **Lembre-se:** A brapi.dev está sempre evoluindo. Acompanhe nossas atualizações para descobrir novos recursos e melhorias! # P/VP 2025: Como Usar Preço/Valor Patrimonial para Value Investing URL: /blog/como-usar-indicador-pvp-valor-patrimonial-analise-acoes.mdx Domine o P/VP para value investing! Aprenda calcular e interpretar Preço/Valor Patrimonial, identificar ações subvalorizadas e estratégias na B3. Guia completo ✓ *** searchable: true title: 'P/VP 2025: Como Usar Preço/Valor Patrimonial para Value Investing' description: 'Domine o P/VP para value investing! Aprenda calcular e interpretar Preço/Valor Patrimonial, identificar ações subvalorizadas e estratégias na B3. Guia completo ✓' date: '2025-08-22' keywords: 'indicador P/VP, preço valor patrimonial, price to book, análise fundamentalista, ações B3, value investing, múltiplos valuation, patrimônio líquido, VPA, brapi' author: 'Equipe brapi.dev' category: 'Análise Fundamentalista' subcategory: 'Múltiplos de Valuation' readingTime: '18 min' tags: \['P/VP', 'Value Investing', 'Análise Fundamentalista', 'B3', 'Valuation', 'Múltiplos', 'Subvalorizadas'] relatedPosts: \['entendendo-indicador-preco-lucro-pl-analise-fundamentalista', 'formula-graham-como-calcular-preco-justo-acoes-value-investing', 'guia-completo-indicadores-fundamentalistas-bovespa'] featured: true expertise: 'Value investing com 8+ anos de experiência no mercado brasileiro' lastReviewed: '2025-08-22' -------------------------- import { Authors, Author } from '~/components/Authors'; # P/VP 2025: Guia Completo Preço Valor Patrimonial Análise Ações B3 > O P/VP (Price-to-Book) é o indicador fundamentalista essencial para identificar ações subvalorizadas. Aprenda como calcular, interpretar e usar este múltiplo para encontrar oportunidades de value investing na B3 em 2025.
""" for acao in relatorio['acoes']: classe_resultado = 'positivo' if acao['resultado'] >= 0 else 'negativo' html += f""" Ticker Nome Qtd Preço Médio Preço Atual Investido Valor Atual Resultado Rendimento Participação DY """ html += """ {acao['ticker']} {acao['nome']} {acao['quantidade']} R$ {acao['preco_medio']:.2f} R$ {acao['preco_atual']:.2f} R$ {acao['investido']:,.2f} R$ {acao['valor_atual']:,.2f} R$ {acao['resultado']:+,.2f} {acao['rendimento_percentual']:+.2f}% {acao['participacao']:.1f}% {acao['dividend_yield']:.2f}% *** ## O que é o Indicador P/VP e Por Que é Fundamental? O **P/VP (Preço sobre Valor Patrimonial)** é um múltiplo que compara o valor de mercado de uma ação com seu valor patrimonial contábil. Este indicador é crucial para identificar se uma empresa está sendo negociada com desconto ou prêmio em relação ao seu patrimônio líquido. **Em termos práticos:** O P/VP mostra quantas vezes você está pagando pelo patrimônio líquido da empresa. É como comparar o preço de uma casa com seu valor de avaliação. ### Fórmula do P/VP ``` P/VP = Preço da Ação ÷ Valor Patrimonial por Ação ``` Onde: * **Preço da Ação**: Cotação atual no mercado * **Valor Patrimonial por Ação**: Patrimônio Líquido ÷ Número de Ações ### Significado dos Valores #### P/VP \< 1,0 * **Interpretação**: Ação negociada abaixo do valor contábil * **Possível oportunidade** de value investing * **Atenção**: Pode indicar problemas fundamentais #### P/VP = 1,0 * **Interpretação**: Preço igual ao valor contábil * **Avaliação neutra** pelo mercado * **Referência** para comparações #### P/VP > 1,0 * **Interpretação**: Mercado avalia acima do valor contábil * **Reconhecimento** de ativos intangíveis * **Pode indicar** sobrevaloração ## Como Calcular P/VP com brapi.dev ### Implementação Prática ```python import requests import json def calcular_pvp_detalhado(ticker, token=''): """Calcula P/VP com análise detalhada""" url = f"https://brapi.dev/api/quote/{ticker}?modules=summaryProfile,defaultKeyStatistics,balanceSheetHistory&token={token}" try: response = requests.get(url) data = response.json() if not data['results']: return None resultado = data['results'][0] # Dados básicos preco_atual = resultado.get('regularMarketPrice', 0) acoes_em_circulacao = resultado.get('sharesOutstanding', 0) # Valor patrimonial do balanço balanco = resultado.get('balanceSheetHistory', {}).get('balanceSheetHistory', []) if not balanco: return None balanco_recente = balanco[0] patrimonio_liquido = balanco_recente.get('totalStockholdersEquity', 0) # Calcular VPA (Valor Patrimonial por Ação) vpa = patrimonio_liquido / acoes_em_circulacao if acoes_em_circulacao > 0 else 0 # Calcular P/VP pvp = preco_atual / vpa if vpa > 0 else 0 return { 'ticker': ticker, 'preco_atual': preco_atual, 'patrimonio_liquido': patrimonio_liquido, 'acoes_circulacao': acoes_em_circulacao, 'vpa': vpa, 'pvp': pvp, 'interpretacao': interpretar_pvp(pvp), 'valor_mercado': preco_atual * acoes_em_circulacao, 'desconto_premio': ((pvp - 1) * 100) } except Exception as e: print(f"Erro ao calcular P/VP para {ticker}: {e}") return None def interpretar_pvp(pvp): """Interpreta o valor do P/VP""" if pvp < 0.5: return { 'classificacao': 'MUITO DESCONTADA', 'descricao': 'Negociada a menos de 50% do valor contábil', 'alerta': 'Investigar motivos - possível distress financeiro', 'cor': 'azul' } elif pvp < 1.0: return { 'classificacao': 'DESCONTADA', 'descricao': 'Negociada abaixo do valor contábil', 'alerta': 'Potencial oportunidade de value investing', 'cor': 'verde' } elif pvp <= 1.5: return { 'classificacao': 'FAIRLY VALUED', 'descricao': 'Avaliação próxima do valor contábil', 'alerta': 'Preço justo considerando ativos tangíveis', 'cor': 'amarelo' } elif pvp <= 3.0: return { 'classificacao': 'PREMIUM', 'descricao': 'Prêmio por qualidade ou crescimento', 'alerta': 'Mercado reconhece valor além dos ativos', 'cor': 'laranja' } else: return { 'classificacao': 'MUITO CARA', 'descricao': 'Múltiplo elevado do valor contábil', 'alerta': 'Possível sobrevalorização', 'cor': 'vermelho' } # Exemplo prático analise_pvp = calcular_pvp_detalhado('ITUB4') if analise_pvp: print("📊 ANÁLISE P/VP - ITUB4") print("=" * 50) print(f"Preço Atual: R$ {analise_pvp['preco_atual']:.2f}") print(f"VPA (Valor Patrimonial por Ação): R$ {analise_pvp['vpa']:.2f}") print(f"P/VP: {analise_pvp['pvp']:.2f}") print(f"Desconto/Prêmio: {analise_pvp['desconto_premio']:+.1f}%") interpretacao = analise_pvp['interpretacao'] print(f"\n🎯 INTERPRETAÇÃO:") print(f"Classificação: {interpretacao['classificacao']}") print(f"Descrição: {interpretacao['descricao']}") print(f"Alerta: {interpretacao['alerta']}") print(f"\n💰 DADOS FINANCEIROS:") print(f"Patrimônio Líquido: R$ {analise_pvp['patrimonio_liquido']/1e9:.2f}B") print(f"Valor de Mercado: R$ {analise_pvp['valor_mercado']/1e9:.2f}B") ``` ## P/VP por Setor: Análise Comparativa ### Características Setoriais ```python def analisar_pvp_setorial(setor_empresas, token=''): """Analisa P/VP por setor""" resultados_setor = [] for ticker in setor_empresas: analise = calcular_pvp_detalhado(ticker, token) if analise: resultados_setor.append(analise) if not resultados_setor: return None # Calcular estatísticas do setor pvps = [r['pvp'] for r in resultados_setor if r['pvp'] > 0] estatisticas = { 'pvp_medio': sum(pvps) / len(pvps), 'pvp_mediano': sorted(pvps)[len(pvps)//2], 'pvp_min': min(pvps), 'pvp_max': max(pvps), 'empresas_desconto': len([p for p in pvps if p < 1.0]), 'empresas_premium': len([p for p in pvps if p > 1.5]), 'total_empresas': len(pvps) } # Ranking por P/VP ranking = sorted(resultados_setor, key=lambda x: x['pvp']) return { 'estatisticas': estatisticas, 'ranking': ranking, 'oportunidades': [r for r in ranking if r['pvp'] < 1.0 and r['pvp'] > 0] } # Análise setorial - Bancos bancos = ['ITUB4', 'BBDC4', 'BBAS3', 'SANB11', 'BPAC11'] analise_bancos = analisar_pvp_setorial(bancos) if analise_bancos: stats = analise_bancos['estatisticas'] print("🏦 ANÁLISE P/VP - SETOR BANCÁRIO") print("=" * 50) print(f"P/VP Médio do Setor: {stats['pvp_medio']:.2f}") print(f"P/VP Mediano: {stats['pvp_mediano']:.2f}") print(f"Faixa: {stats['pvp_min']:.2f} - {stats['pvp_max']:.2f}") print(f"Empresas com Desconto: {stats['empresas_desconto']}/{stats['total_empresas']}") print(f"\n🎯 RANKING P/VP (MENOR → MAIOR):") for i, empresa in enumerate(analise_bancos['ranking'][:5], 1): print(f"{i}. {empresa['ticker']}: {empresa['pvp']:.2f}") if analise_bancos['oportunidades']: print(f"\n💎 OPORTUNIDADES (P/VP < 1.0):") for opp in analise_bancos['oportunidades']: desconto = (1 - opp['pvp']) * 100 print(f"• {opp['ticker']}: P/VP {opp['pvp']:.2f} ({desconto:.1f}% desconto)") ``` ## Screening Avançado por P/VP ### Filtros Combinados ```python def screening_value_investing_pvp(universo_acoes, criterios, token=''): """Screening focado em P/VP para value investing""" candidatos = [] for ticker in universo_acoes: try: # Análise P/VP analise_pvp = calcular_pvp_detalhado(ticker, token) if not analise_pvp: continue # Buscar dados complementares url = f"https://brapi.dev/api/quote/{ticker}?modules=defaultKeyStatistics,financialData&token={token}" response = requests.get(url) data = response.json() if not data['results']: continue resultado = data['results'][0] # Métricas complementares roe = resultado.get('returnOnEquity', 0) debt_equity = resultado.get('debtToEquity', 0) current_ratio = resultado.get('currentRatio', 0) pl = resultado.get('trailingPE', 0) # Aplicar filtros pvp = analise_pvp['pvp'] # Critérios de value investing if (pvp > 0 and pvp <= criterios['pvp_max'] and roe >= criterios['roe_min'] and debt_equity <= criterios['debt_equity_max'] and current_ratio >= criterios['liquidez_min'] and pl > 0 and pl <= criterios['pl_max']): score_value = calcular_score_value(pvp, roe, debt_equity, current_ratio, pl) candidatos.append({ 'ticker': ticker, 'pvp': pvp, 'roe': roe, 'debt_equity': debt_equity, 'current_ratio': current_ratio, 'pl': pl, 'score_value': score_value, 'desconto_vpa': (1 - pvp) * 100 if pvp < 1 else 0, 'interpretacao': analise_pvp['interpretacao']['classificacao'] }) except Exception as e: print(f"Erro ao analisar {ticker}: {e}") continue # Ordenar por score de value return sorted(candidatos, key=lambda x: x['score_value'], reverse=True) def calcular_score_value(pvp, roe, debt_equity, current_ratio, pl): """Calcula score de value investing""" score = 0 # Score P/VP (peso 30%) if pvp < 0.5: score += 30 elif pvp < 0.8: score += 25 elif pvp < 1.0: score += 20 elif pvp < 1.2: score += 15 else: score += 5 # Score ROE (peso 25%) if roe >= 20: score += 25 elif roe >= 15: score += 20 elif roe >= 10: score += 15 elif roe >= 5: score += 10 # Score Endividamento (peso 20%) if debt_equity < 0.3: score += 20 elif debt_equity < 0.5: score += 15 elif debt_equity < 1.0: score += 10 elif debt_equity < 1.5: score += 5 # Score Liquidez (peso 15%) if current_ratio >= 2.0: score += 15 elif current_ratio >= 1.5: score += 12 elif current_ratio >= 1.2: score += 8 elif current_ratio >= 1.0: score += 5 # Score P/L (peso 10%) if pl < 10: score += 10 elif pl < 15: score += 8 elif pl < 20: score += 5 return min(score, 100) # Máximo 100 # Critérios para screening value criterios_value = { 'pvp_max': 1.2, 'roe_min': 10, 'debt_equity_max': 1.0, 'liquidez_min': 1.0, 'pl_max': 15 } # Universo de ações para análise universo_value = [ 'ITUB4', 'BBDC4', 'PETR4', 'VALE3', 'ABEV3', 'MGLU3', 'EGIE3', 'SBSP3', 'BBSE3', 'TAEE11', 'CMIG4', 'ENBR3', 'CCRO3', 'EQTL3', 'CSAN3', 'USIM5' ] candidatos_value = screening_value_investing_pvp(universo_value, criterios_value) print("💎 SCREENING VALUE INVESTING - P/VP") print("=" * 70) print("Critérios aplicados:") print(f"• P/VP ≤ {criterios_value['pvp_max']}") print(f"• ROE ≥ {criterios_value['roe_min']}%") print(f"• Debt/Equity ≤ {criterios_value['debt_equity_max']}") print(f"• Liquidez Corrente ≥ {criterios_value['liquidez_min']}") print(f"• P/L ≤ {criterios_value['pl_max']}") print(f"\n📊 RESULTADOS ({len(candidatos_value)} empresas aprovadas):") print("-" * 70) for i, candidato in enumerate(candidatos_value[:10], 1): print(f"{i:2d}. {candidato['ticker']} - Score: {candidato['score_value']:.0f}/100") print(f" P/VP: {candidato['pvp']:.2f} | ROE: {candidato['roe']:.1f}% | P/L: {candidato['pl']:.1f}") if candidato['desconto_vpa'] > 0: print(f" 💰 Desconto ao VPA: {candidato['desconto_vpa']:.1f}%") print(f" 📊 {candidato['interpretacao']}") print() ``` ## P/VP vs. Outros Indicadores ### Análise Multivariada ```python def matriz_valor_pvp_combinada(ticker, token=''): """Análise combinada P/VP com outros indicadores""" # Buscar dados completos url = f"https://brapi.dev/api/quote/{ticker}?modules=defaultKeyStatistics,financialData,summaryDetail&token={token}" response = requests.get(url) data = response.json() if not data['results']: return None resultado = data['results'][0] # Calcular P/VP analise_pvp = calcular_pvp_detalhado(ticker, token) if not analise_pvp: return None # Outros múltiplos pl = resultado.get('trailingPE', 0) psr = resultado.get('priceToSalesTrailing12Months', 0) ev_ebitda = resultado.get('enterpriseToEbitda', 0) # Indicadores de qualidade roe = resultado.get('returnOnEquity', 0) roa = resultado.get('returnOnAssets', 0) margem_liquida = resultado.get('profitMargins', 0) * 100 # Análise combinada matriz_analise = { 'ticker': ticker, 'multiplos': { 'pvp': analise_pvp['pvp'], 'pl': pl, 'psr': psr, 'ev_ebitda': ev_ebitda }, 'qualidade': { 'roe': roe, 'roa': roa, 'margem_liquida': margem_liquida }, 'avaliacao_combinada': avaliar_combinacao_indicadores( analise_pvp['pvp'], pl, roe, margem_liquida ) } return matriz_analise def avaliar_combinacao_indicadores(pvp, pl, roe, margem_liquida): """Avalia empresa com base em combinação de indicadores""" # Classificação P/VP if pvp < 1.0: classe_pvp = "Descontada" score_pvp = 20 elif pvp < 1.5: classe_pvp = "Justa" score_pvp = 15 else: classe_pvp = "Premium" score_pvp = 10 # Classificação P/L if pl < 10: classe_pl = "Barata" score_pl = 15 elif pl < 15: classe_pl = "Moderada" score_pl = 12 elif pl < 20: classe_pl = "Cara" score_pl = 8 else: classe_pl = "Muito Cara" score_pl = 3 # Classificação Qualidade if roe >= 15 and margem_liquida >= 10: classe_qualidade = "Alta Qualidade" score_qualidade = 25 elif roe >= 10 and margem_liquida >= 5: classe_qualidade = "Boa Qualidade" score_qualidade = 20 elif roe >= 5: classe_qualidade = "Qualidade Média" score_qualidade = 15 else: classe_qualidade = "Baixa Qualidade" score_qualidade = 5 score_total = score_pvp + score_pl + score_qualidade # Recomendação final if score_total >= 50: recomendacao = "COMPRA FORTE" elif score_total >= 40: recomendacao = "COMPRA" elif score_total >= 30: recomendacao = "NEUTRO" else: recomendacao = "EVITAR" return { 'classes': { 'pvp': classe_pvp, 'pl': classe_pl, 'qualidade': classe_qualidade }, 'scores': { 'pvp': score_pvp, 'pl': score_pl, 'qualidade': score_qualidade, 'total': score_total }, 'recomendacao': recomendacao, 'justificativa': f"{classe_pvp} (P/VP) + {classe_pl} (P/L) + {classe_qualidade}" } # Exemplo de análise multivariada matriz_itub4 = matriz_valor_pvp_combinada('ITUB4') if matriz_itub4: print("🔍 MATRIZ DE VALOR COMBINADA - ITUB4") print("=" * 60) multiplos = matriz_itub4['multiplos'] print(f"📊 MÚLTIPLOS:") print(f"P/VP: {multiplos['pvp']:.2f}") print(f"P/L: {multiplos['pl']:.1f}") print(f"PSR: {multiplos['psr']:.2f}") qualidade = matriz_itub4['qualidade'] print(f"\n⭐ INDICADORES DE QUALIDADE:") print(f"ROE: {qualidade['roe']:.1f}%") print(f"ROA: {qualidade['roa']:.1f}%") print(f"Margem Líquida: {qualidade['margem_liquida']:.1f}%") avaliacao = matriz_itub4['avaliacao_combinada'] print(f"\n🎯 AVALIAÇÃO COMBINADA:") print(f"Score Total: {avaliacao['scores']['total']}/60") print(f"Recomendação: {avaliacao['recomendacao']}") print(f"Justificativa: {avaliacao['justificativa']}") ``` ## Limitações do P/VP ### Quando Não Usar P/VP #### 1. **Empresas de Tecnologia** * Ativos intangíveis não aparecem no balanço * P/VP pode ser enganoso * Foco em múltiplos de receita #### 2. **Empresas em Crescimento Acelerado** * P/VP alto pode ser justificado * Crescimento futuro não refletido no patrimônio * Análise de potencial mais relevante #### 3. **Empresas com Prejuízos Recorrentes** * Patrimônio pode estar deteriorado * P/VP baixo por motivos fundamentais * Necessário análise de viabilidade ### Ajustes e Melhorias ```python def pvp_ajustado_qualidade_ativos(ticker, token=''): """P/VP ajustado pela qualidade dos ativos""" analise_base = calcular_pvp_detalhado(ticker, token) if not analise_base: return None # Buscar detalhes do balanço url = f"https://brapi.dev/api/quote/{ticker}?modules=balanceSheetHistory&token={token}" response = requests.get(url) data = response.json() balanco = data['results'][0]['balanceSheetHistory']['balanceSheetHistory'][0] # Analisar composição dos ativos total_assets = balanco.get('totalAssets', 0) current_assets = balanco.get('totalCurrentAssets', 0) cash = balanco.get('cash', 0) inventory = balanco.get('inventory', 0) goodwill = balanco.get('goodWill', 0) or 0 # Calcular qualidade dos ativos if total_assets > 0: liquidez_ativos = current_assets / total_assets participacao_cash = cash / total_assets participacao_goodwill = goodwill / total_assets participacao_estoque = inventory / total_assets if inventory else 0 else: return analise_base # Score de qualidade (0-1) quality_score = ( min(liquidez_ativos * 0.4, 0.4) + # Max 40% para liquidez min(participacao_cash * 2, 0.3) + # Max 30% para cash max(0, 0.2 - participacao_goodwill) + # Penaliza goodwill alto max(0, 0.1 - participacao_estoque * 0.5) # Penaliza estoque alto ) # P/VP ajustado pvp_original = analise_base['pvp'] pvp_ajustado = pvp_original / quality_score if quality_score > 0 else pvp_original return { **analise_base, 'pvp_ajustado': pvp_ajustado, 'quality_score': quality_score, 'analise_ativos': { 'liquidez_ativos': liquidez_ativos * 100, 'participacao_cash': participacao_cash * 100, 'participacao_goodwill': participacao_goodwill * 100, 'participacao_estoque': participacao_estoque * 100 }, 'ajuste_recomendado': quality_score < 0.7 } # Exemplo de P/VP ajustado analise_ajustada = pvp_ajustado_qualidade_ativos('MGLU3') if analise_ajustada: print("🔧 P/VP AJUSTADO POR QUALIDADE DOS ATIVOS") print("=" * 55) print(f"P/VP Original: {analise_ajustada['pvp']:.2f}") print(f"P/VP Ajustado: {analise_ajustada['pvp_ajustado']:.2f}") print(f"Score Qualidade: {analise_ajustada['quality_score']:.2f}") ativos = analise_ajustada['analise_ativos'] print(f"\n📋 COMPOSIÇÃO DOS ATIVOS:") print(f"Liquidez dos Ativos: {ativos['liquidez_ativos']:.1f}%") print(f"Participação Cash: {ativos['participacao_cash']:.1f}%") print(f"Participação Goodwill: {ativos['participacao_goodwill']:.1f}%") print(f"Participação Estoque: {ativos['participacao_estoque']:.1f}%") if analise_ajustada['ajuste_recomendado']: print("\n⚠️ RECOMENDAÇÃO: Considerar P/VP ajustado devido à baixa qualidade dos ativos") ``` ## Casos Práticos de Análise ### Exemplo 1: Banco (ITUB4) **Características:** * Ativos tangíveis (empréstimos, imóveis) * P/VP tradicionalmente próximo a 1,0 * ROE elevado justifica prêmio ### Exemplo 2: Siderúrgica (USIM5) **Características:** * Ativos físicos (plantas industriais) * P/VP volátil com ciclo econômico * Atenção para depreciação ### Exemplo 3: Petrolífera (PETR4) **Características:** * Reservas não totalmente contabilizadas * P/VP pode subestimar valor real * Considerar reservas provadas ## Estratégias de Investimento com P/VP ### 1. **Deep Value Investing** * P/VP \< 0,8 * Empresas temporariamente desvalorizadas * Alto risco, alto retorno potencial ### 2. **Quality Value** * P/VP \< 1,2 * ROE > 15% * Empresas sólidas com desconto ### 3. **Contrarian Investing** * P/VP historicamente baixo * Setores fora de favor * Reversão à média ## Conclusão O P/VP é um indicador fundamental para identificar oportunidades de value investing, especialmente em empresas com ativos tangíveis significativos. Combine sempre com outros indicadores e análise qualitativa. ### Pontos-Chave: 1. **P/VP \< 1,0**: Possível oportunidade, investigar motivos 2. **Análise setorial**: Compare com pares do mesmo setor 3. **Qualidade dos ativos**: Ajuste por composição patrimonial 4. **Combine indicadores**: Use junto com ROE, P/L e margem líquida 5. **Contexto temporal**: Considere ciclo econômico e setor ### Próximos Passos: * **[Combine com análise P/L](/blog/entendendo-indicador-preco-lucro-pl-analise-fundamentalista)** para visão completa * **[Aprenda outros indicadores](/blog/guia-completo-indicadores-fundamentalistas-bovespa)** fundamentalistas * **[Use nossa plataforma](/quotes)** para screening por P/VP * **[Acesse dados via API](/docs)** para implementar suas análises **Lembre-se**: P/VP baixo pode indicar oportunidade ou problema. Sempre faça análise completa antes de investir! # Demonstrativos Financeiros 2025: Como Analisar Saúde de Empresas URL: /blog/demonstrativos-financeiros-um-olhar-detalhado-na-saude-financeira-da-empresa.mdx Domine análise de demonstrativos financeiros! DRE, Balanço Patrimonial, Fluxo de Caixa e indicadores para avaliar saúde financeira real na B3 ✓ *** searchable: true title: 'Demonstrativos Financeiros 2025: Como Analisar Saúde de Empresas' description: 'Domine análise de demonstrativos financeiros! DRE, Balanço Patrimonial, Fluxo de Caixa e indicadores para avaliar saúde financeira real na B3 ✓' date: '2025-08-22' keywords: 'demonstrativos financeiros, DRE, balanço patrimonial, fluxo caixa, saúde financeira empresas, análise financeira, B3, demonstrações contábeis, brapi' author: 'Equipe brapi.dev' category: 'Análise Financeira' subcategory: 'Demonstrações Contábeis' readingTime: '21 min' tags: \['Demonstrativos Financeiros', 'DRE', 'Balanço', 'Análise Financeira', 'B3', 'Fluxo Caixa', 'Contabilidade'] relatedPosts: \['analise-financeira-com-modulo-balance-sheet-history', 'balanco-patrimonial-acoes', 'guia-completo-indicadores-fundamentalistas-bovespa'] featured: true expertise: 'Análise de demonstrativos financeiros com 8+ anos de experiência' lastReviewed: '2025-08-22' -------------------------- import { Authors, Author } from '~/components/Authors'; # Demonstrativos Financeiros: Um Olhar Detalhado na Saúde Financeira da Empresa > Descubra o significado e a importância dos demonstrativos financeiros. Saiba > como eles são usados para analisar a saúde financeira de uma empresa e > auxiliar na tomada de decisões de investimento. ## O que são Demonstrativos Financeiros? Os demonstrativos financeiros são uma fotografia da situação financeira de uma empresa. Eles são uma representação histórica e não necessariamente refletem o desempenho futuro. São divididos em três categorias principais: o **balanço patrimonial**, a **demonstração do resultado do exercício** e a **demonstração do fluxo de caixa**. Eles indicam quanto dinheiro a empresa tem, de onde veio e para onde foi. Importante lembrar que, embora valiosos, eles podem ter limitações, como a possibilidade de não capturar todos os aspectos da saúde financeira de uma empresa devido às restrições das normas contábeis geralmente aceitas (GAAP). ## Quem utiliza Demonstrativos Financeiros? As demonstrações financeiras são utilizadas por pessoas tanto dentro quanto fora da empresa. Aqueles que estão dentro, como gerentes e chefes, os usam para decidir como administrar o negócio. Aqueles de fora, como investidores e credores, os usam para descobrir a saúde financeira da empresa e se devem investir nela. ## Como utilizar Demonstrativos Financeiros? Existem três maneiras principais de usar demonstrações financeiras * **Análise horizontal**: Isso significa comparar informações de diferentes períodos para ver se há alguma tendência. Por exemplo, você pode comparar quanto dinheiro a empresa ganhou este ano com o quanto ganhou no ano passado para ver se está crescendo. * **Análise vertical**: Isso significa comparar diferentes partes de uma única demonstração para ver como elas se relacionam entre si. Por exemplo, você pode comparar quanto a empresa gasta na fabricação de produtos com quanto dinheiro ela ganha vendendo-os para ver quanto dinheiro fica na empresa depois de pagar esses custos. * **Análise de ratios**: Os ratios são números especiais que lhe dizem algo sobre a saúde financeira da empresa. Por exemplo, você pode calcular um ratio entre a dívida e o patrimônio líquido da empresa para ver quanta dívida ela tem em comparação com seu próprio dinheiro. ### Fatores Qualitativos Além da análise quantitativa, fatores qualitativos como qualidade da gestão, reputação da marca e cenário competitivo devem ser considerados, pois podem afetar significativamente o desempenho financeiro da empresa. ### Viés Comportamental em Finanças Os investidores devem estar cientes de seus próprios vieses e heurísticas, pois podem influenciar a interpretação dos demonstrativos financeiros. O entendimento e a consciência desses vieses podem ajudar a evitar armadilhas e a tomar decisões mais informadas. ## Quais são os diferentes tipos de demonstrações financeiras? * **Balanço patrimonial**: Este demonstra o que a empresa possui (ativos), o que deve (passivos) e quanto dinheiro sobra (patrimônio líquido) em um determinado momento. Ativos são coisas como dinheiro, estoque e edifícios. Passivos são coisas como empréstimos e contas a pagar. O patrimônio líquido é o dinheiro que sobraria se a empresa vendesse tudo o que possui e pagasse todas as suas dívidas. * **Demonstração do resultado do exercício**: Este demonstra quanto dinheiro a empresa ganhou (receita), quanto gastou (despesas) e se obteve lucro ou prejuízo (lucro líquido) durante um determinado período. A receita vem da venda de produtos ou serviços. Despesas são os custos de administrar o negócio. O lucro líquido é o dinheiro que sobra depois que todas as despesas são pagas. * **Demonstração do fluxo de caixa**: Este demonstra de onde veio o dinheiro da empresa (entradas de caixa) e para onde ele foi (saídas de caixa) durante um determinado período. As entradas de caixa vêm de coisas como vendas e empréstimos. As saídas de caixa vão para coisas como pagar contas e comprar suprimentos. ## Por que os demonstrativos financeiros são úteis? Os demonstrativos financeiros são extremamente úteis para entender a saúde financeira de uma empresa, identificar riscos e oportunidades potenciais e tomar melhores decisões de investimento. * Ajudam a entender como uma empresa é saudável financeiramente. * Ajudam a ver potenciais riscos e oportunidades. * Ajudam a tomar melhores decisões de investimento. ## Exemplos de uso de demonstrações financeiras A teoria se torna mais clara quando aplicada na prática. Por isso, é útil estudar exemplos reais e casos de estudo de empresas que utilizaram a análise de demonstrativos financeiros para tomar decisões de investimento bem-sucedidas. * Um investidor pode comparar demonstrações financeiras de diferentes empresas antes de decidir em qual investir. * Um banco pode usar demonstrações financeiras para decidir se empresta ou não dinheiro a uma empresa. * Um gerente de empresa pode usar demonstrações financeiras para acompanhar o progresso da empresa e tomar decisões sobre como melhorar seu desempenho. ## Onde encontrar dados de demonstrativos financeiros? Os dados de demonstrativos financeiros podem ser encontrados em vários lugares, como sites de empresas, sites de bolsas de valores e sites de agências de notícias financeiras. Caso você precise de dados mais detalhados e específicos, você pode acessar esse dados por API de dados financeiros, como a [brapi](https://brapi.dev). A brapi é uma API de dados financeiros que fornece dados de demonstrativos financeiros de empresas brasileiras. [Ler documentação da API da brapi](https://brapi.dev/docs/acoes#modules-opcional) ## Conclusão Os demonstrativos financeiros são uma ferramenta poderosa que pode ajudá-lo a entender a saúde financeira de uma empresa e a tomar melhores decisões sobre seu dinheiro. Ao aprender os princípios básicos dos demonstrativos financeiros, você pode abrir a porta para informações valiosas sobre o mundo financeiro. # Dividend Yield 2025: Como Construir Carteira de Renda Passiva na B3 URL: /blog/dividend-yield-dy-como-calcular-usar-analise-acoes-dividendos.mdx Domine o Dividend Yield (DY) para renda passiva! Aprenda a calcular, analisar e investir em ações pagadoras de dividendos. Guia completo com API e estratégias ✓ *** searchable: true title: 'Dividend Yield 2025: Como Construir Carteira de Renda Passiva na B3' description: 'Domine o Dividend Yield (DY) para renda passiva! Aprenda a calcular, analisar e investir em ações pagadoras de dividendos. Guia completo com API e estratégias ✓' date: '2025-08-22' keywords: 'dividend yield, DY, dividendos, renda passiva, ações pagadoras dividendos, análise fundamentalista, B3, investimento dividendos, yield, brapi' author: 'Equipe brapi.dev' category: 'Dividendos e Renda Passiva' subcategory: 'Estratégias de Renda' readingTime: '18 min' tags: \['Dividend Yield', 'Dividendos', 'Renda Passiva', 'B3', 'Investimentos', 'Income Investing', 'Pagadoras', 'Yield'] relatedPosts: \['entendendo-indicador-preco-lucro-pl-analise-fundamentalista', 'fundos-imobiliarios-fiis-guia-completo-investir-renda-passiva', 'metodo-bazin-estrategia-renda-passiva-acoes-dividendos'] featured: true expertise: 'Estratégias de renda passiva com 8+ anos de experiência no mercado brasileiro' lastReviewed: '2025-08-22' -------------------------- import { Authors, Author } from '~/components/Authors'; # Dividend Yield 2025: Como Construir Carteira de Renda Passiva na B3 > O Dividend Yield (DY) é o indicador essencial para investidores que buscam renda passiva através de dividendos. Aprenda como calcular, analisar e selecionar as melhores ações pagadoras para construir uma carteira sólida na B3 em 2025. *** ## O que é Dividend Yield e Por Que é Fundamental para Renda Passiva? **O Dividend Yield (DY) mostra o percentual de retorno em dividendos que você recebe anualmente em relação ao preço da ação.** É o indicador mais direto para avaliar a atratividade de uma ação para geração de renda passiva. **Em termos práticos:** Um DY de 8% significa que você recebe R$ 8,00 em dividendos para cada R$ 100 investidos na ação durante o ano. ### Por Que o DY é Crucial para Income Investors? 1. **Mede retorno imediato** em dinheiro 2. **Compara** diferentes ações pagadoras 3. **Base** para estratégias de renda passiva 4. **Indica** sustentabilidade dos pagamentos 5. **Ferramenta** para timing de compra e venda ### Fórmula do Dividend Yield ``` DY = (Dividendos por Ação nos últimos 12 meses ÷ Preço atual da Ação) × 100 ``` **Exemplo prático:** * Ação cotada a R$ 50 * Dividendos pagos nos últimos 12 meses: R$ 3 por ação * DY = (3 ÷ 50) × 100 = 6% ## Por que o Dividend Yield é Importante? ### 1. Indicador de Renda Passiva O DY mostra diretamente qual será o retorno anual em dividendos, permitindo comparar diferentes investimentos focados em renda. ### 2. Disciplina de Gestão Empresas que pagam dividendos consistentes geralmente têm gestão disciplinada e fluxo de caixa estável. ### 3. Proteção contra Inflação Dividendos crescentes podem oferecer proteção contra a inflação ao longo do tempo. ## Como Interpretar o Dividend Yield ### DY Alto (acima de 8%) **Vantagens:** * Maior retorno imediato em dividendos * Potencial para boa renda passiva **Atenção:** * Pode indicar empresa em dificuldades * Dividendo pode não ser sustentável * Preço da ação pode estar em queda ### DY Moderado (4% a 8%) **Características:** * Equilibrio entre renda e crescimento * Empresas maduras e estáveis * Sustentabilidade mais provável ### DY Baixo (abaixo de 4%) **Possíveis cenários:** * Empresa em fase de crescimento * Reinvestimento de lucros * Valorização da ação superior aos dividendos ## Acessando Dados de DY com a API brapi.dev A [API da brapi.dev](/docs/acoes) fornece dados atualizados de Dividend Yield para todas as ações da B3: ### Consultando DY via API ```bash curl "https://brapi.dev/api/quote/ITUB4?modules=defaultKeyStatistics" ``` **Resposta com dados de DY:** ```json { "results": [{ "symbol": "ITUB4", "shortName": "ITAUUNIBANCO PN", "regularMarketPrice": 25.50, "defaultKeyStatistics": { "dividendYield": 0.0542, "trailingAnnualDividendRate": 1.38, "trailingAnnualDividendYield": 0.0542 } }] } ``` Neste exemplo, o DY é de 5,42%, indicando que a cada R$ 100 investidos, o retorno anual em dividendos seria de aproximadamente R$ 5,42. ## Setores com Melhores Dividend Yields no Brasil ### Bancos * **DY médio:** 5% a 12% * **Exemplos:** ITUB4, BBDC4, BBAS3 * **Características:** Dividendos obrigatórios, lucros recorrentes ### Utilidades (Energia e Saneamento) * **DY médio:** 4% a 8% * **Exemplos:** EGIE3, SBSP3, CPLE6 * **Características:** Fluxo de caixa previsível, concessões ### Seguradoras * **DY médio:** 3% a 7% * **Exemplos:** BBSE3, SULA11, IRBR3 * **Características:** Modelo de negócio estável ## Análise de Sustentabilidade dos Dividendos ### Payout Ratio ``` Payout = Dividendos ÷ Lucro Líquido ``` **Interpretação:** * **0% a 40%:** Conservador, espaço para crescimento * **40% a 70%:** Equilibrado, sustentável * **Acima de 70%:** Pode comprometer reinvestimentos ### Indicadores Complementares #### 1. Crescimento dos Dividendos Analise o histórico de crescimento dos dividendos ao longo dos anos: ```bash # Consulta histórica via brapi.dev curl "https://brapi.dev/api/quote/VIVT3?range=5y&interval=1y&modules=dividendsData" ``` #### 2. Fluxo de Caixa Livre Verifique se a empresa gera caixa suficiente para sustentar os dividendos: ``` Cobertura = Fluxo de Caixa Livre ÷ Dividendos Pagos ``` ## Estratégias com Base no Dividend Yield ### 1. Estratégia Bazin Criada por Décio Bazin, busca ações com: * DY ≥ 6% * Crescimento constante dos dividendos * Baixo endividamento ### 2. Dividend Growth Investing Foca em empresas que: * Crescem dividendos consistentemente * Têm payout sustentável * Operam em setores defensivos ### 3. High Yield Strategy Seleciona ações com: * DY elevado (acima de 8%) * Análise rigorosa de sustentabilidade * Diversificação setorial ## Armadilhas do Dividend Yield ### 1. Yield Trap **O que é:** DY alto devido à queda do preço da ação por problemas fundamentais. **Como evitar:** * Analise o payout ratio * Verifique a saúde financeira * Observe tendências do setor ### 2. Dividendos Insustentáveis **Sinais de alerta:** * Payout ratio muito alto * Endividamento crescente * Queda nas margens operacionais ### 3. Foco Apenas no DY Não considere apenas o DY. Avalie também: * Qualidade da empresa * Crescimento do negócio * Ambiente competitivo ## Construindo uma Carteira de Dividendos ### Diversificação Setorial Distribua investimentos entre diferentes setores: * 30% Bancos * 25% Utilities * 20% Consumo * 15% Seguradoras * 10% Outros setores ### Critérios de Seleção 1. **DY mínimo:** 4% 2. **Payout máximo:** 70% 3. **Histórico:** Pelo menos 5 anos pagando dividendos 4. **Crescimento:** Dividendos crescentes ou estáveis ## Ferramentas para Análise de DY ### Screening com brapi.dev Use nossa [plataforma de cotações](/quotes) para: * Filtrar ações por DY * Comparar dividendos históricos * Analisar tendências setoriais ### Acompanhamento Regular Monitore trimestralmente: * Relatórios de resultados * Anúncios de dividendos * Mudanças na política de distribuição ## Aspectos Tributários dos Dividendos ### Isenção de IR No Brasil, dividendos são isentos de imposto de renda para pessoa física. ### Juros sobre Capital Próprio (JCP) * Tributação de 15% na fonte * Pode ser abatido no imposto de renda * Considerado dedutível para a empresa ## Exemplo Prático: Análise Completa ### Empresa Hipotética: XPTO4 * **Preço atual:** R$ 40 * **Dividendos TTM:** R$ 2,40 * **DY:** 6% * **Payout:** 45% * **Crescimento médio dividendos (5 anos):** 8% **Análise:** ✅ DY atrativo de 6% ✅ Payout sustentável de 45% ✅ Histórico de crescimento dos dividendos ✅ Empresa com fundamentos sólidos ## Monitoramento e Alertas ### Indicadores de Acompanhamento 1. **Crescimento trimestral dos dividendos** 2. **Mudanças no payout ratio** 3. **Anúncios de política de dividendos** 4. **Variações significativas no DY** ### Quando Reavaliar * DY cair abaixo de 3% * Payout superar 80% * Corte ou suspensão de dividendos * Deterioração dos fundamentos ## Conclusão O Dividend Yield é uma ferramenta poderosa para investidores focados em renda passiva, mas deve ser usado com cuidado e sempre em conjunto com outros indicadores fundamentalistas. ### Pontos-Chave: 1. **DY isolado pode enganar** - sempre analise a sustentabilidade 2. **Diversificação é essencial** - não concentre em poucos ativos 3. **Acompanhamento regular** - dividendos podem mudar 4. **Qualidade primeiro** - prefira empresas sólidas ### Próximos Passos * Explore nossa [documentação completa](/docs) sobre dados de dividendos * Use nossa [API](/docs/acoes) para construir seu próprio screening * Acesse dados históricos na [plataforma brapi.dev](/quotes) **Lembre-se:** dividendos são uma consequência de bons negócios. Invista primeiro na qualidade da empresa, e os dividendos virão naturalmente. # EBITDA e EBIT 2025: Como Analisar Performance Operacional na B3 URL: /blog/ebitda-ebit-como-analisar-eficiencia-operacional-empresas.mdx Domine EBITDA e EBIT para análise operacional! Aprenda múltiplos EV/EBITDA, margens operacionais e como avaliar eficiência real das empresas. Guia completo ✓ *** searchable: true title: 'EBITDA e EBIT 2025: Como Analisar Performance Operacional na B3' description: 'Domine EBITDA e EBIT para análise operacional! Aprenda múltiplos EV/EBITDA, margens operacionais e como avaliar eficiência real das empresas. Guia completo ✓' date: '2025-08-22' keywords: 'EBITDA, EBIT, eficiência operacional, múltiplos valuation, EV/EBITDA, margem EBITDA, análise fundamentalista, performance operacional, B3, brapi' author: 'Equipe brapi.dev' category: 'Análise Operacional' subcategory: 'Indicadores Operacionais' readingTime: '19 min' tags: \['EBITDA', 'EBIT', 'Análise Operacional', 'Valuation', 'B3', 'Múltiplos', 'Performance', 'Eficiência'] relatedPosts: \['enterprise-value-ev-como-calcular-valor-real-empresa', 'roe-return-equity-como-avaliar-eficiencia-gestao-empresarial', 'entendendo-indicador-preco-lucro-pl-analise-fundamentalista'] featured: true expertise: 'Análise operacional com 8+ anos de experiência no mercado brasileiro' lastReviewed: '2025-08-22' -------------------------- import { Authors, Author } from '~/components/Authors'; # EBITDA e EBIT: Como Analisar a Eficiência Operacional das Empresas > EBITDA e EBIT são indicadores fundamentais para avaliar a performance operacional de empresas, eliminando distorções causadas por estrutura de capital, impostos e depreciação. Aprenda como calcular, interpretar e usar esses múltiplos na análise de investimentos. *** ## O que é EBIT? O **EBIT (Earnings Before Interest and Taxes)** representa o lucro antes dos juros e impostos, mostrando a capacidade operacional da empresa de gerar resultados independentemente de sua estrutura de capital e regime tributário. ### Fórmula do EBIT ``` EBIT = Receita Líquida - Custos Operacionais - Despesas Operacionais ``` **Ou alternativamente:** ``` EBIT = Lucro Líquido + Despesas Financeiras + Impostos ``` ### Por que o EBIT é Importante? #### 1. **Foco na Operação** * Elimina efeitos da estrutura de capital * Mostra eficiência operacional pura * Facilita comparações entre empresas #### 2. **Análise Temporal** * Permite comparar performance ao longo do tempo * Neutraliza mudanças tributárias * Foca no core business #### 3. **Base para Múltiplos** * EV/EBIT para valuation * Margem EBIT para eficiência * EBIT/Receita para rentabilidade operacional ## O que é EBITDA? O **EBITDA (Earnings Before Interest, Taxes, Depreciation and Amortization)** vai além do EBIT, excluindo também depreciação e amortização, representando a geração de caixa operacional da empresa. ### Fórmula do EBITDA ``` EBITDA = EBIT + Depreciação + Amortização ``` **Ou mais diretamente:** ``` EBITDA = Lucro Líquido + Juros + Impostos + Depreciação + Amortização ``` ### Vantagens do EBITDA #### 1. **Proxy de Geração de Caixa** * Aproxima-se do fluxo de caixa operacional * Elimina efeitos contábeis não-monetários * Mostra capacidade de gerar recursos #### 2. **Comparabilidade** * Empresas com diferentes idades dos ativos * Setores com intensidades de capital distintas * Regimes de depreciação variados #### 3. **Análise de Alavancagem** * Base para calcular Dívida/EBITDA * Capacidade de pagamento de juros * Sustentabilidade do endividamento ## Calculando EBIT e EBITDA com brapi.dev ### Obtendo Dados via API ```python import requests import pandas as pd def calcular_ebit_ebitda(ticker, token): """Calcula EBIT e EBITDA usando dados da brapi.dev""" url = f"https://brapi.dev/api/quote/{ticker}?modules=incomeStatementHistory,defaultKeyStatistics&token={token}" try: response = requests.get(url) data = response.json() # Dados da DRE income_statements = data['results'][0].get('incomeStatementHistory', {}).get('incomeStatementHistory', []) stats = data['results'][0].get('defaultKeyStatistics', {}) if not income_statements: return {} # Último período (TTM) ultimo_periodo = income_statements[0] # Extrair dados necessários receita_liquida = ultimo_periodo.get('totalRevenue', 0) lucro_operacional = ultimo_periodo.get('operatingIncome', 0) # Já é o EBIT lucro_liquido = ultimo_periodo.get('netIncome', 0) despesas_financeiras = ultimo_periodo.get('interestExpense', 0) impostos = ultimo_periodo.get('incomeTaxExpense', 0) # EBIT (pode vir direto como operatingIncome) ebit = lucro_operacional # Para EBITDA, precisamos somar depreciação ao EBIT # Tentamos extrair da demonstração ou estimamos depreciacao_amortizacao = ultimo_periodo.get('totalOperatingExpenses', 0) - ultimo_periodo.get('costOfRevenue', 0) - ultimo_periodo.get('sellingGeneralAdministrative', 0) # Se não conseguimos extrair, estimamos um percentual da receita if depreciacao_amortizacao <= 0: # Estimativa conservadora baseada no setor estimativa_depreciacao = receita_liquida * 0.03 # 3% da receita depreciacao_amortizacao = estimativa_depreciacao ebitda = ebit + abs(depreciacao_amortizacao) # Calcular margens margem_ebit = (ebit / receita_liquida * 100) if receita_liquida > 0 else 0 margem_ebitda = (ebitda / receita_liquida * 100) if receita_liquida > 0 else 0 # Múltiplos de mercado market_cap = stats.get('marketCap', 0) enterprise_value = stats.get('enterpriseValue', 0) ev_ebit = (enterprise_value / ebit) if ebit > 0 else 0 ev_ebitda = (enterprise_value / ebitda) if ebitda > 0 else 0 return { 'ticker': ticker, 'periodo': '2023 TTM', # Assumindo TTM 'receita_liquida': receita_liquida / 1e9, # Em bilhões 'ebit': ebit / 1e9, 'ebitda': ebitda / 1e9, 'lucro_liquido': lucro_liquido / 1e9, 'margens': { 'margem_ebit': margem_ebit, 'margem_ebitda': margem_ebitda, 'margem_liquida': (lucro_liquido / receita_liquida * 100) if receita_liquida > 0 else 0 }, 'multiplos': { 'ev_ebit': ev_ebit, 'ev_ebitda': ev_ebitda, 'p_l': (market_cap / lucro_liquido) if lucro_liquido > 0 else 0 }, 'enterprise_value': enterprise_value / 1e9, 'market_cap': market_cap / 1e9 } except Exception as e: print(f"Erro ao calcular EBIT/EBITDA para {ticker}: {e}") return {} # Exemplo de uso analise_wege = calcular_ebit_ebitda('WEGE3', 'SEU_TOKEN') if analise_wege: print("⚙️ ANÁLISE EBIT/EBITDA - WEGE3") print("=" * 50) print(f"Receita Líquida: R$ {analise_wege['receita_liquida']:.2f}B") print(f"EBIT: R$ {analise_wege['ebit']:.2f}B") print(f"EBITDA: R$ {analise_wege['ebitda']:.2f}B") print(f"Lucro Líquido: R$ {analise_wege['lucro_liquido']:.2f}B") print(f"\n📊 MARGENS:") print(f"Margem EBIT: {analise_wege['margens']['margem_ebit']:.1f}%") print(f"Margem EBITDA: {analise_wege['margens']['margem_ebitda']:.1f}%") print(f"Margem Líquida: {analise_wege['margens']['margem_liquida']:.1f}%") print(f"\n📈 MÚLTIPLOS:") print(f"EV/EBIT: {analise_wege['multiplos']['ev_ebit']:.1f}x") print(f"EV/EBITDA: {analise_wege['multiplos']['ev_ebitda']:.1f}x") print(f"P/L: {analise_wege['multiplos']['p_l']:.1f}x") ``` ## Análise Comparativa entre Setores ### Benchmarks por Setor ```python def analisar_setor_ebitda(tickers_setor, nome_setor, token): """Analisa EBITDA de um setor específico""" resultados_setor = [] for ticker in tickers_setor: dados = calcular_ebit_ebitda(ticker, token) if dados: resultados_setor.append(dados) if not resultados_setor: return {} # Calcular estatísticas do setor margens_ebitda = [r['margens']['margem_ebitda'] for r in resultados_setor if r['margens']['margem_ebitda'] > 0] multiplos_ev_ebitda = [r['multiplos']['ev_ebitda'] for r in resultados_setor if 0 < r['multiplos']['ev_ebitda'] < 50] estatisticas_setor = { 'setor': nome_setor, 'numero_empresas': len(resultados_setor), 'margem_ebitda': { 'media': sum(margens_ebitda) / len(margens_ebitda) if margens_ebitda else 0, 'mediana': sorted(margens_ebitda)[len(margens_ebitda)//2] if margens_ebitda else 0, 'minimo': min(margens_ebitda) if margens_ebitda else 0, 'maximo': max(margens_ebitda) if margens_ebitda else 0 }, 'ev_ebitda': { 'media': sum(multiplos_ev_ebitda) / len(multiplos_ev_ebitda) if multiplos_ev_ebitda else 0, 'mediana': sorted(multiplos_ev_ebitda)[len(multiplos_ev_ebitda)//2] if multiplos_ev_ebitda else 0, 'minimo': min(multiplos_ev_ebitda) if multiplos_ev_ebitda else 0, 'maximo': max(multiplos_ev_ebitda) if multiplos_ev_ebitda else 0 }, 'empresas': resultados_setor } return estatisticas_setor # Análise por setores setores_analise = { 'Industrial': ['WEGE3', 'RAIL3', 'EMBR3', 'GOAU4'], 'Utilities': ['EGIE3', 'SBSP3', 'CPLE6', 'TAEE11'], 'Commodities': ['VALE3', 'SUZB3', 'KLBN11', 'GGBR4'], 'Financeiro': ['ITUB4', 'BBDC4', 'BBAS3', 'BBSE3'] } analises_setoriais = {} for setor, tickers in setores_analise.items(): print(f"Analisando setor {setor}...") analise = analisar_setor_ebitda(tickers, setor, 'SEU_TOKEN') analises_setoriais[setor] = analise # Exibir comparação setorial print("\n🏭 COMPARAÇÃO SETORIAL - EBITDA") print("=" * 70) for setor, dados in analises_setoriais.items(): if dados: print(f"\n{setor}:") print(f" Margem EBITDA Média: {dados['margem_ebitda']['media']:.1f}%") print(f" EV/EBITDA Médio: {dados['ev_ebitda']['media']:.1f}x") print(f" Empresas analisadas: {dados['numero_empresas']}") ``` ## Interpretação dos Múltiplos EV/EBITDA ### Análise de Atratividade ```python def avaliar_multiplo_ev_ebitda(ev_ebitda, setor): """Avalia atratividade do múltiplo EV/EBITDA por setor""" # Benchmarks típicos por setor (valores indicativos) benchmarks_setor = { 'Industrial': {'baixo': 8, 'medio': 12, 'alto': 18}, 'Utilities': {'baixo': 6, 'medio': 10, 'alto': 14}, 'Commodities': {'baixo': 4, 'medio': 8, 'alto': 12}, 'Financeiro': {'baixo': 5, 'medio': 10, 'alto': 15}, 'Tecnologia': {'baixo': 15, 'medio': 25, 'alto': 40}, 'Consumo': {'baixo': 10, 'medio': 15, 'alto': 22} } benchmark = benchmarks_setor.get(setor, {'baixo': 8, 'medio': 12, 'alto': 18}) if ev_ebitda <= benchmark['baixo']: return { 'classificacao': 'ATRATIVO', 'descricao': 'Múltiplo baixo, possível oportunidade', 'score': 90, 'cor': 'verde' } elif ev_ebitda <= benchmark['medio']: return { 'classificacao': 'JUSTO', 'descricao': 'Múltiplo na média do setor', 'score': 60, 'cor': 'amarelo' } elif ev_ebitda <= benchmark['alto']: return { 'classificacao': 'CARO', 'descricao': 'Múltiplo acima da média', 'score': 30, 'cor': 'laranja' } else: return { 'classificacao': 'MUITO CARO', 'descricao': 'Múltiplo muito elevado', 'score': 10, 'cor': 'vermelho' } def analisar_atratividade_empresas(empresas_dados): """Analisa atratividade de múltiplas empresas""" analises = [] for empresa in empresas_dados: if empresa['multiplos']['ev_ebitda'] > 0: # Tentar identificar setor (simplificado) setor = identificar_setor_empresa(empresa['ticker']) avaliacao = avaliar_multiplo_ev_ebitda( empresa['multiplos']['ev_ebitda'], setor ) analises.append({ 'ticker': empresa['ticker'], 'ev_ebitda': empresa['multiplos']['ev_ebitda'], 'margem_ebitda': empresa['margens']['margem_ebitda'], 'setor': setor, 'avaliacao': avaliacao }) # Ordenar por atratividade (menor EV/EBITDA primeiro) return sorted(analises, key=lambda x: x['ev_ebitda']) def identificar_setor_empresa(ticker): """Identifica setor da empresa (simplificado)""" setores_mapeamento = { 'WEGE3': 'Industrial', 'RAIL3': 'Industrial', 'EMBR3': 'Industrial', 'EGIE3': 'Utilities', 'SBSP3': 'Utilities', 'CPLE6': 'Utilities', 'VALE3': 'Commodities', 'SUZB3': 'Commodities', 'KLBN11': 'Commodities', 'ITUB4': 'Financeiro', 'BBDC4': 'Financeiro', 'BBAS3': 'Financeiro' } return setores_mapeamento.get(ticker, 'Outros') # Exemplo de análise de atratividade todas_empresas = [] for setor_dados in analises_setoriais.values(): if setor_dados and 'empresas' in setor_dados: todas_empresas.extend(setor_dados['empresas']) ranking_atratividade = analisar_atratividade_empresas(todas_empresas) print("\n🎯 RANKING DE ATRATIVIDADE - EV/EBITDA") print("=" * 60) for i, empresa in enumerate(ranking_atratividade[:10], 1): print(f"{i:2d}. {empresa['ticker']} - {empresa['setor']}") print(f" EV/EBITDA: {empresa['ev_ebitda']:.1f}x") print(f" Margem EBITDA: {empresa['margem_ebitda']:.1f}%") print(f" Avaliação: {empresa['avaliacao']['classificacao']} - {empresa['avaliacao']['descricao']}") print() ``` ## Análise de Evolução Temporal ### Acompanhamento de Tendências ```python def analisar_evolucao_ebitda(ticker, token): """Analisa evolução histórica do EBITDA""" url = f"https://brapi.dev/api/quote/{ticker}?modules=incomeStatementHistory&token={token}" try: response = requests.get(url) data = response.json() income_statements = data['results'][0].get('incomeStatementHistory', {}).get('incomeStatementHistory', []) if len(income_statements) < 2: return {} evolucao = [] for statement in income_statements[:4]: # Últimos 4 anos ano = datetime.fromtimestamp(statement['endDate']).year receita = statement.get('totalRevenue', 0) ebit = statement.get('operatingIncome', 0) # Estimar EBITDA (simplificado) ebitda = ebit * 1.3 # Estimativa: EBITDA = 130% do EBIT margem_ebit = (ebit / receita * 100) if receita > 0 else 0 margem_ebitda = (ebitda / receita * 100) if receita > 0 else 0 evolucao.append({ 'ano': ano, 'receita': receita / 1e9, 'ebit': ebit / 1e9, 'ebitda': ebitda / 1e9, 'margem_ebit': margem_ebit, 'margem_ebitda': margem_ebitda }) # Ordenar por ano evolucao = sorted(evolucao, key=lambda x: x['ano']) # Calcular crescimentos tendencias = {} if len(evolucao) >= 2: ultimo = evolucao[-1] anterior = evolucao[-2] tendencias = { 'crescimento_receita': ((ultimo['receita'] - anterior['receita']) / anterior['receita'] * 100) if anterior['receita'] > 0 else 0, 'crescimento_ebitda': ((ultimo['ebitda'] - anterior['ebitda']) / anterior['ebitda'] * 100) if anterior['ebitda'] > 0 else 0, 'evolucao_margem': ultimo['margem_ebitda'] - anterior['margem_ebitda'], 'consistencia_margem': calcular_consistencia_margem([e['margem_ebitda'] for e in evolucao]) } return { 'ticker': ticker, 'evolucao_anual': evolucao, 'tendencias': tendencias } except Exception as e: print(f"Erro ao analisar evolução de {ticker}: {e}") return {} def calcular_consistencia_margem(margens): """Calcula consistência da margem EBITDA""" if len(margens) < 2: return 0 media = sum(margens) / len(margens) desvio = sum((m - media) ** 2 for m in margens) / len(margens) desvio_padrao = desvio ** 0.5 # Coeficiente de variação (menor = mais consistente) cv = (desvio_padrao / media * 100) if media > 0 else 100 # Score de consistência (0-100, maior = mais consistente) score = max(0, 100 - cv * 2) return score # Exemplo de análise temporal evolucao_wege = analisar_evolucao_ebitda('WEGE3', 'SEU_TOKEN') if evolucao_wege: print("📈 EVOLUÇÃO TEMPORAL - WEGE3") print("=" * 50) for ano_data in evolucao_wege['evolucao_anual']: print(f"\n📅 {ano_data['ano']}:") print(f" Receita: R$ {ano_data['receita']:.1f}B") print(f" EBITDA: R$ {ano_data['ebitda']:.1f}B") print(f" Margem EBITDA: {ano_data['margem_ebitda']:.1f}%") if evolucao_wege['tendencias']: print(f"\n🔍 TENDÊNCIAS:") print(f" Crescimento Receita: {evolucao_wege['tendencias']['crescimento_receita']:+.1f}%") print(f" Crescimento EBITDA: {evolucao_wege['tendencias']['crescimento_ebitda']:+.1f}%") print(f" Evolução Margem: {evolucao_wege['tendencias']['evolucao_margem']:+.1f} p.p.") print(f" Consistência Margem: {evolucao_wege['tendencias']['consistencia_margem']:.1f}/100") ``` ## Armadilhas na Análise de EBITDA ### Principais Cuidados ```python def identificar_armadilhas_ebitda(dados_empresa): """Identifica possíveis armadilhas na análise de EBITDA""" alertas = [] # 1. EBITDA muito maior que EBIT (depreciação excessiva) ebit = dados_empresa.get('ebit', 0) ebitda = dados_empresa.get('ebitda', 0) if ebit > 0 and ebitda > 0: diferenca_pct = ((ebitda - ebit) / ebit * 100) if diferenca_pct > 50: # Depreciação > 50% do EBIT alertas.append({ 'tipo': 'DEPRECIACAO_ALTA', 'descricao': f'Depreciação representa {diferenca_pct:.1f}% do EBIT', 'severidade': 'MEDIA', 'impacto': 'EBITDA pode superestimar geração de caixa' }) # 2. Margem EBITDA muito alta para o setor margem_ebitda = dados_empresa['margens']['margem_ebitda'] ticker = dados_empresa['ticker'] setor = identificar_setor_empresa(ticker) margens_tipicas = { 'Industrial': 15, 'Utilities': 25, 'Commodities': 20, 'Financeiro': 30, 'Tecnologia': 25, 'Consumo': 12 } margem_tipica = margens_tipicas.get(setor, 15) if margem_ebitda > margem_tipica * 1.5: # 50% acima da média alertas.append({ 'tipo': 'MARGEM_ATIPICA', 'descricao': f'Margem EBITDA {margem_ebitda:.1f}% muito acima da média do setor ({margem_tipica}%)', 'severidade': 'BAIXA', 'impacto': 'Verificar sustentabilidade da margem' }) # 3. EV/EBITDA muito baixo (possível distressed) ev_ebitda = dados_empresa['multiplos']['ev_ebitda'] if 0 < ev_ebitda < 3: alertas.append({ 'tipo': 'MULTIPLO_BAIXO', 'descricao': f'EV/EBITDA {ev_ebitda:.1f}x muito baixo', 'severidade': 'ALTA', 'impacto': 'Possível empresa em dificuldades' }) # 4. EBITDA positivo mas lucro líquido negativo lucro_liquido = dados_empresa.get('lucro_liquido', 0) if ebitda > 0 and lucro_liquido < 0: alertas.append({ 'tipo': 'EBITDA_POSITIVO_PREJUIZO', 'descricao': 'EBITDA positivo mas empresa tem prejuízo', 'severidade': 'ALTA', 'impacto': 'Estrutura de capital ou impostos problemáticos' }) return alertas def avaliar_qualidade_ebitda(dados_empresa): """Avalia qualidade do EBITDA""" alertas = identificar_armadilhas_ebitda(dados_empresa) # Score de qualidade (0-100) score_qualidade = 100 for alerta in alertas: if alerta['severidade'] == 'ALTA': score_qualidade -= 30 elif alerta['severidade'] == 'MEDIA': score_qualidade -= 15 else: score_qualidade -= 5 score_qualidade = max(0, score_qualidade) # Classificação if score_qualidade >= 80: classificacao = 'EXCELENTE' elif score_qualidade >= 60: classificacao = 'BOA' elif score_qualidade >= 40: classificacao = 'MÉDIA' else: classificacao = 'BAIXA' return { 'score_qualidade': score_qualidade, 'classificacao': classificacao, 'alertas': alertas, 'recomendacao': gerar_recomendacao_qualidade(score_qualidade, alertas) } def gerar_recomendacao_qualidade(score, alertas): """Gera recomendação baseada na qualidade do EBITDA""" if score >= 80: return "EBITDA de alta qualidade, confiável para análise" elif score >= 60: return "EBITDA adequado, mas atenção aos pontos identificados" elif score >= 40: return "EBITDA com ressalvas, validar com outros indicadores" else: return "EBITDA questionável, usar com muito cuidado" # Exemplo de avaliação de qualidade for empresa in todas_empresas[:3]: # Analisar 3 empresas avaliacao = avaliar_qualidade_ebitda(empresa) print(f"\n🔍 QUALIDADE EBITDA - {empresa['ticker']}") print("=" * 40) print(f"Score de Qualidade: {avaliacao['score_qualidade']}/100") print(f"Classificação: {avaliacao['classificacao']}") print(f"Recomendação: {avaliacao['recomendacao']}") if avaliacao['alertas']: print("\n⚠️ Alertas identificados:") for alerta in avaliacao['alertas']: print(f" • {alerta['descricao']}") print(f" Impacto: {alerta['impacto']}") ``` ## Dashboard de Monitoramento EBITDA ### Sistema de Acompanhamento ```python class MonitorEBITDA: def __init__(self, token): self.token = token self.watchlist = [] def adicionar_watchlist(self, tickers): """Adiciona tickers à watchlist""" if isinstance(tickers, str): tickers = [tickers] self.watchlist.extend(tickers) self.watchlist = list(set(self.watchlist)) # Remove duplicatas def gerar_relatorio_watchlist(self): """Gera relatório da watchlist""" relatorio = { 'data': datetime.now().strftime('%d/%m/%Y %H:%M'), 'total_empresas': len(self.watchlist), 'empresas': [], 'estatisticas': {}, 'alertas': [] } dados_empresas = [] for ticker in self.watchlist: dados = calcular_ebit_ebitda(ticker, self.token) if dados: # Adicionar avaliação de qualidade qualidade = avaliar_qualidade_ebitda(dados) dados['qualidade_ebitda'] = qualidade dados_empresas.append(dados) relatorio['empresas'] = dados_empresas # Calcular estatísticas if dados_empresas: margens_ebitda = [e['margens']['margem_ebitda'] for e in dados_empresas] multiplos_ev = [e['multiplos']['ev_ebitda'] for e in dados_empresas if 0 < e['multiplos']['ev_ebitda'] < 50] relatorio['estatisticas'] = { 'margem_ebitda_media': sum(margens_ebitda) / len(margens_ebitda), 'ev_ebitda_medio': sum(multiplos_ev) / len(multiplos_ev) if multiplos_ev else 0, 'melhor_margem': max(margens_ebitda), 'menor_multiplo': min(multiplos_ev) if multiplos_ev else 0 } # Identificar alertas gerais for empresa in dados_empresas: if empresa['qualidade_ebitda']['score_qualidade'] < 60: relatorio['alertas'].append(f"{empresa['ticker']}: Qualidade EBITDA baixa") if empresa['multiplos']['ev_ebitda'] > 20: relatorio['alertas'].append(f"{empresa['ticker']}: EV/EBITDA muito alto ({empresa['multiplos']['ev_ebitda']:.1f}x)") return relatorio def exportar_csv(self, relatorio, filename=None): """Exporta relatório para CSV""" if not filename: filename = f"relatorio_ebitda_{datetime.now().strftime('%Y%m%d')}.csv" dados_csv = [] for empresa in relatorio['empresas']: dados_csv.append({ 'Ticker': empresa['ticker'], 'Receita (R$B)': empresa['receita_liquida'], 'EBITDA (R$B)': empresa['ebitda'], 'Margem EBITDA (%)': empresa['margens']['margem_ebitda'], 'EV/EBITDA': empresa['multiplos']['ev_ebitda'], 'Qualidade EBITDA': empresa['qualidade_ebitda']['classificacao'], 'Score Qualidade': empresa['qualidade_ebitda']['score_qualidade'] }) df = pd.DataFrame(dados_csv) df.to_csv(filename, index=False) return filename # Exemplo de uso do monitor monitor = MonitorEBITDA('SEU_TOKEN') # Adicionar empresas à watchlist monitor.adicionar_watchlist(['WEGE3', 'VALE3', 'EGIE3', 'ITUB4', 'RAIL3']) # Gerar relatório relatorio_monitor = monitor.gerar_relatorio_watchlist() print("📊 RELATÓRIO WATCHLIST - EBITDA") print("=" * 50) print(f"Data: {relatorio_monitor['data']}") print(f"Empresas monitoradas: {relatorio_monitor['total_empresas']}") if relatorio_monitor['estatisticas']: print(f"\n📈 ESTATÍSTICAS GERAIS:") print(f"Margem EBITDA Média: {relatorio_monitor['estatisticas']['margem_ebitda_media']:.1f}%") print(f"EV/EBITDA Médio: {relatorio_monitor['estatisticas']['ev_ebitda_medio']:.1f}x") print(f"Melhor Margem: {relatorio_monitor['estatisticas']['melhor_margem']:.1f}%") if relatorio_monitor['alertas']: print(f"\n⚠️ ALERTAS:") for alerta in relatorio_monitor['alertas']: print(f" • {alerta}") # Exportar para CSV arquivo_csv = monitor.exportar_csv(relatorio_monitor) print(f"\n📄 Relatório exportado para: {arquivo_csv}") ``` ## Estratégias de Investimento com EBITDA ### Screening Baseado em EBITDA ```python def screening_ebitda_strategy(universo_acoes, estrategia, token): """Estratégias de screening baseadas em EBITDA""" estrategias = { 'growth': { 'nome': 'Crescimento EBITDA', 'criterios': { 'margem_ebitda_min': 15, 'ev_ebitda_max': 15, 'crescimento_min': 10 } }, 'value': { 'nome': 'Value EBITDA', 'criterios': { 'ev_ebitda_max': 8, 'margem_ebitda_min': 10, 'qualidade_min': 70 } }, 'quality': { 'nome': 'Qualidade EBITDA', 'criterios': { 'margem_ebitda_min': 20, 'consistencia_min': 80, 'qualidade_min': 80 } } } if estrategia not in estrategias: return [] config = estrategias[estrategia] criterios = config['criterios'] candidatos = [] for ticker in universo_acoes: dados = calcular_ebit_ebitda(ticker, token) if not dados: continue # Analisar evolução para crescimento if estrategia == 'growth': evolucao = analisar_evolucao_ebitda(ticker, token) crescimento_ebitda = 0 if evolucao and evolucao['tendencias']: crescimento_ebitda = evolucao['tendencias']['crescimento_ebitda'] # Avaliar qualidade qualidade = avaliar_qualidade_ebitda(dados) # Aplicar critérios da estratégia aprovado = True motivos_reprovacao = [] # Margem EBITDA mínima if dados['margens']['margem_ebitda'] < criterios.get('margem_ebitda_min', 0): aprovado = False motivos_reprovacao.append(f"Margem EBITDA baixa: {dados['margens']['margem_ebitda']:.1f}%") # EV/EBITDA máximo if dados['multiplos']['ev_ebitda'] > criterios.get('ev_ebitda_max', 999): aprovado = False motivos_reprovacao.append(f"EV/EBITDA alto: {dados['multiplos']['ev_ebitda']:.1f}x") # Qualidade mínima if qualidade['score_qualidade'] < criterios.get('qualidade_min', 0): aprovado = False motivos_reprovacao.append(f"Qualidade baixa: {qualidade['score_qualidade']}/100") # Crescimento mínimo (se aplicável) if estrategia == 'growth' and crescimento_ebitda < criterios.get('crescimento_min', 0): aprovado = False motivos_reprovacao.append(f"Crescimento baixo: {crescimento_ebitda:.1f}%") if aprovado: candidatos.append({ 'ticker': ticker, 'dados': dados, 'qualidade': qualidade, 'crescimento': crescimento_ebitda if estrategia == 'growth' else None, 'score_estrategia': calcular_score_estrategia(dados, qualidade, estrategia) }) else: print(f"{ticker} reprovado: {', '.join(motivos_reprovacao)}") # Ordenar por score da estratégia return sorted(candidatos, key=lambda x: x['score_estrategia'], reverse=True) def calcular_score_estrategia(dados, qualidade, estrategia): """Calcula score específico para cada estratégia""" if estrategia == 'value': # Para value: menor EV/EBITDA é melhor ev_ebitda = dados['multiplos']['ev_ebitda'] score_multiplo = max(0, 100 - ev_ebitda * 5) # Score decresce com múltiplo score_margem = min(100, dados['margens']['margem_ebitda'] * 3) return (score_multiplo * 0.6 + score_margem * 0.4) elif estrategia == 'quality': # Para quality: foco na qualidade e margem score_qualidade = qualidade['score_qualidade'] score_margem = min(100, dados['margens']['margem_ebitda'] * 3) return (score_qualidade * 0.7 + score_margem * 0.3) else: # growth # Para growth: foco em margem e crescimento score_margem = min(100, dados['margens']['margem_ebitda'] * 3) # Score de crescimento seria calculado se tivéssemos os dados return score_margem # Executar estratégias universo_teste = ['WEGE3', 'VALE3', 'EGIE3', 'RAIL3', 'EMBR3', 'SUZB3'] for estrategia in ['value', 'quality']: print(f"\n🎯 ESTRATÉGIA: {estrategia.upper()}") print("=" * 50) resultados = screening_ebitda_strategy(universo_teste, estrategia, 'SEU_TOKEN') for i, resultado in enumerate(resultados[:3], 1): dados = resultado['dados'] print(f"{i}. {dados['ticker']}") print(f" EBITDA: R$ {dados['ebitda']:.1f}B") print(f" Margem: {dados['margens']['margem_ebitda']:.1f}%") print(f" EV/EBITDA: {dados['multiplos']['ev_ebitda']:.1f}x") print(f" Qualidade: {resultado['qualidade']['classificacao']}") print(f" Score: {resultado['score_estrategia']:.1f}") print() ``` ## Conclusão EBIT e EBITDA são indicadores fundamentais para avaliar a performance operacional de empresas, oferecendo uma visão mais clara da eficiência do negócio ao eliminar distorções financeiras, tributárias e contábeis. ### Principais Aprendizados: 1. **EBIT foca na operação** eliminando efeitos de estrutura de capital e impostos 2. **EBITDA aproxima-se do caixa** excluindo também depreciação e amortização 3. **Comparabilidade** entre empresas e setores é facilitada 4. **Múltiplos EV/EBITDA** são essenciais para valuation 5. **Análise temporal** revela tendências operacionais ### Cuidados Importantes: * **EBITDA não é caixa**: Ignorar capex pode ser perigoso * **Qualidade importa**: Verificar sustentabilidade das margens * **Contexto setorial**: Benchmarks variam significativamente * **Armadilhas existem**: Empresas distressed podem ter múltiplos baixos enganosos ### Próximos Passos: * **[Explore nossa API](/docs)** para dados completos de demonstrações financeiras * **[Use nossa plataforma](/quotes)** para análises comparativas * **Implemente os frameworks** de análise apresentados * **Combine com outros indicadores** para análise completa ### Recursos Adicionais: * **[Dados históricos](/docs)** para análise de tendências * **[Análise setorial](/blog/analise-setorial-acoes-como-comparar-empresas-mesmo-segmento-b3)** * **[Múltiplos de valuation](/blog/enterprise-value-ev-como-calcular-valor-real-empresa)** **Lembre-se**: EBITDA é uma ferramenta poderosa quando usada corretamente, mas deve sempre ser complementada com análise de fluxo de caixa e outros indicadores financeiros! # P/L (Preço/Lucro) 2025: Como Analisar Ações com o Indicador Mais Usado URL: /blog/entendendo-indicador-preco-lucro-pl-analise-fundamentalista.mdx Domine o indicador P/L para análise fundamentalista de ações! Aprenda a calcular, interpretar e investir usando Preço/Lucro na B3. Guia completo com exemplos práticos e API brapi.dev ✓ *** searchable: true title: 'P/L (Preço/Lucro) 2025: Como Analisar Ações com o Indicador Mais Usado' description: 'Domine o indicador P/L para análise fundamentalista de ações! Aprenda a calcular, interpretar e investir usando Preço/Lucro na B3. Guia completo com exemplos práticos e API brapi.dev ✓' date: '2025-08-22' keywords: 'indicador P/L, preço lucro, análise fundamentalista, ações B3, múltiplos valuation, LPA, investimento ações, value investing, bolsa valores, brapi' author: 'Equipe brapi.dev' category: 'Análise Fundamentalista' subcategory: 'Múltiplos de Valuation' readingTime: '15 min' tags: \['P/L', 'Análise Fundamentalista', 'Investimentos', 'B3', 'Valuation', 'LPA', 'Value Investing', 'Múltiplos'] relatedPosts: \['roe-return-equity-como-avaliar-eficiencia-gestao-empresarial', 'enterprise-value-ev-como-calcular-valor-real-empresa', 'dividend-yield-dy-como-calcular-usar-analise-acoes-dividendos'] featured: true expertise: 'Análise de múltiplos fundamentalistas com 8+ anos de experiência no mercado brasileiro' lastReviewed: '2025-08-22' -------------------------- import { Authors, Author } from '~/components/Authors'; # P/L (Preço/Lucro) 2025: Como Analisar Ações com o Indicador Mais Usado > O P/L (Preço/Lucro) é o indicador fundamentalista mais utilizado para avaliar se uma ação está barata ou cara. Aprenda como calcular, interpretar e usar este múltiplo essencial para investir com inteligência na B3 em 2025. *** ## O que é o P/L e Como Funciona na Prática? **O P/L (Price-to-Earnings) mostra quantos anos você levaria para recuperar seu investimento baseado no lucro atual da empresa.** É o múltiplo mais popular entre investidores porque oferece uma resposta rápida: "Esta ação está cara ou barata?" **Exemplo prático:** Se uma ação custa R$ 20 e a empresa lucra R$ 2 por ação anualmente, o P/L é 10x. Isso significa que, mantendo o lucro atual, você recuperaria seu investimento em 10 anos. ### Por Que Todo Investidor Deve Conhecer o P/L? 1. **Comparação instantânea** entre empresas do mesmo setor 2. **Identificação rápida** de oportunidades de value investing 3. **Base sólida** para decisões de compra e venda 4. **Ferramenta essencial** para análise setorial 5. **Indicador histórico** com décadas de validação no mercado ## Como Calcular o Indicador P/L: Fórmula e Exemplos Práticos ### Fórmula do P/L ``` P/L = Preço da Ação ÷ Lucro Por Ação (LPA) ``` **Onde:** * **Preço da Ação**: Cotação atual no mercado * **LPA (Lucro Por Ação)**: Lucro líquido ÷ número de ações em circulação ### Exemplo Prático de Cálculo **Empresa XYZ:** * Preço da ação: R$ 50,00 * Lucro líquido anual: R$ 10 milhões * Ações em circulação: 1 milhão * LPA = R$ 10 milhões ÷ 1 milhão = R$ 10,00 * **P/L = R$ 50,00 ÷ R$ 10,00 = 5x** **Interpretação**: Você pagaria 5 vezes o lucro anual atual para comprar esta ação. ## Como Interpretar o Indicador P/L: Guia Completo 2025 ### O que Significa Cada Faixa de P/L? #### P/L Baixo (0-10x) - Possível Subvalorização * **Significado**: Ação potencialmente barata * **Cenários**: Empresas maduras, cíclicas ou com problemas temporários * **Oportunidade**: Value investing, mas requer análise cuidadosa * **Exemplos B3**: Bancos, siderúrgicas, petróleo #### P/L Moderado (10-20x) - Valuation Equilibrado * **Significado**: Preço justo em relação aos lucros * **Cenários**: Empresas estabelecidas com crescimento estável * **Estratégia**: Análise adicional de qualidade e crescimento * **Exemplos B3**: Varejo, utilities, alimentos #### P/L Alto (20x+) - Expectativas de Crescimento * **Significado**: Mercado espera crescimento acelerado * **Cenários**: Empresas de tecnologia, startups lucrativas * **Risco**: Alta volatilidade se não cumprir expectativas * **Exemplos B3**: Fintechs, e-commerce, SaaS ### Análise Setorial do P/L: Benchmarks por Setor **Setor Bancário**: P/L médio 6-12x **Petróleo & Gás**: P/L médio 5-15x\ **Varejo**: P/L médio 12-25x **Tecnologia**: P/L médio 20-40x **Utilities**: P/L médio 10-18x ## Calculando P/L com brapi.dev API: Implementação Prática A [API da brapi.dev](/docs/acoes) fornece dados de P/L atualizados em tempo real para todas as ações da B3. Veja como implementar análises automatizadas: ### Consulta Básica de P/L ```bash curl "https://brapi.dev/api/quote/PETR4?modules=defaultKeyStatistics&token=SEU_TOKEN" ``` ### Implementação em Python para Análise Completa ```python import requests import pandas as pd def analisar_pl_acao(ticker, token=''): """Análise completa de P/L com contexto setorial""" url = f"https://brapi.dev/api/quote/{ticker}?modules=defaultKeyStatistics,summaryProfile&token={token}" try: response = requests.get(url) data = response.json() if not data['results']: return None resultado = data['results'][0] # Dados básicos preco = resultado.get('regularMarketPrice', 0) pe_ratio = resultado.get('defaultKeyStatistics', {}).get('trailingPE', 0) forward_pe = resultado.get('defaultKeyStatistics', {}).get('forwardPE', 0) eps = resultado.get('defaultKeyStatistics', {}).get('earningsPerShare', 0) setor = resultado.get('summaryProfile', {}).get('sector', 'N/A') # Análise de valuation def analisar_valuation(pe): if pe < 10: return "Potencialmente subvalorizada" elif pe < 20: return "Valuation moderado" else: return "Altas expectativas de crescimento" return { 'ticker': ticker, 'preco_atual': preco, 'pe_atual': pe_ratio, 'pe_forward': forward_pe, 'lpa': eps, 'setor': setor, 'analise_valuation': analisar_valuation(pe_ratio), 'recomendacao': 'Analisar fundamentals' if pe_ratio < 15 else 'Avaliar crescimento' } except Exception as e: return f"Erro: {str(e)}" # Exemplo de uso resultado = analisar_pl_acao('ITUB4') print(f"P/L do {resultado['ticker']}: {resultado['pe_atual']:.2f}x") print(f"Análise: {resultado['analise_valuation']}") ``` ### Comparação Automática entre Ações ```typescript async function compararPLSetorial(tickers: string[], token: string = '') { const resultados = []; for (const ticker of tickers) { const response = await fetch( `https://brapi.dev/api/quote/${ticker}?modules=defaultKeyStatistics&token=${token}` ); const data = await response.json(); if (data.results && data.results[0]) { const quote = data.results[0]; resultados.push({ ticker, pl: quote.defaultKeyStatistics?.trailingPE || 0, preco: quote.regularMarketPrice || 0 }); } } // Ordenar por P/L (menor para maior) return resultados.sort((a, b) => a.pl - b.pl); } // Exemplo: Comparar bancos const bancos = ['ITUB4', 'BBDC4', 'BBAS3', 'SANB11']; compararPLSetorial(bancos).then(resultado => { console.log('Ranking por P/L (menor = potencialmente mais barato):'); resultado.forEach((banco, index) => { console.log(`${index + 1}. ${banco.ticker}: ${banco.pl.toFixed(2)}x`); }); }); ``` ## Limitações do Indicador P/L: O que Você Precisa Saber ### 1. Baseado em Dados Históricos (TTM) O P/L tradicional utiliza lucros dos últimos 12 meses, que podem não refletir o potencial futuro da empresa. **Solução**: Combine com P/L forward e análise de crescimento. ### 2. Não Considera Qualidade dos Lucros Nem todos os lucros são iguais. Lucros recorrentes têm mais valor que ganhos extraordinários. **Importante**: Analise a origem dos lucros no DRE. ### 3. Distorções por Eventos Especiais Ganhos ou perdas não-recorrentes podem distorcer temporariamente o indicador. **Dica**: Use lucro ajustado quando disponível. ### 4. Ignoram o Endividamento Duas empresas com mesmo P/L podem ter riscos diferentes conforme o nível de endividamento. **Combine com**: [Enterprise Value](/blog/enterprise-value-ev-como-calcular-valor-real-empresa) para análise completa. ## P/L Forward vs P/L Trailing: Qual Usar? ### P/L Trailing (TTM) - Baseado no Passado * **Vantagem**: Dados auditados e confiáveis * **Desvantagem**: Pode estar defasado * **Quando usar**: Empresas maduras e estáveis * **Fórmula**: Preço atual ÷ LPA últimos 12 meses ### P/L Forward - Baseado em Projeções * **Vantagem**: Incorpora expectativas futuras * **Desvantagem**: Baseado em estimativas * **Quando usar**: Empresas em transformação * **Fórmula**: Preço atual ÷ LPA projetado próximos 12 meses ## Combinando P/L com Outros Múltiplos para Análise Completa ### PEG Ratio: P/L Ajustado por Crescimento ``` PEG = P/L ÷ Taxa de Crescimento dos Lucros (%) ``` * **PEG \< 1,0**: Potencialmente subvalorizada * **PEG = 1,0**: Preço justo considerando crescimento * **PEG > 1,0**: Possível sobrevaloração ### Análise Multimúltiplos Essencial **Combine P/L com:** * [P/VP](/blog/como-usar-indicador-pvp-valor-patrimonial-analise-acoes) para análise de valor contábil * [ROE](/blog/roe-return-equity-como-avaliar-eficiencia-gestao-empresarial) para eficiência do capital * [EV/EBITDA](/blog/enterprise-value-ev-como-calcular-valor-real-empresa) para valor real da empresa * [Dividend Yield](/blog/dividend-yield-dy-como-calcular-usar-analise-acoes-dividendos) para renda passiva ## P/L Setorial na B3: Benchmarks Atualizados 2025 ### Setores de Alto P/L (Crescimento) * **Tecnologia/SaaS**: 20-40x * **E-commerce**: 25-35x * **Saúde/Biotecnologia**: 15-30x * **Educação**: 18-28x ### Setores de P/L Moderado (Estável) * **Varejo Tradicional**: 12-20x * **Alimentos & Bebidas**: 15-25x * **Utilities/Energia**: 10-18x * **Telecomunicações**: 8-16x ### Setores de Baixo P/L (Value) * **Bancos**: 5-12x * **Seguradoras**: 6-14x * **Petróleo & Gás**: 4-12x * **Siderurgia/Mineração**: 3-10x ## Estratégias Práticas com P/L para Diferentes Perfis ### Value Investing: Caçando Barganhas 1. **Filtre ações** com P/L \< 15x 2. **Verifique qualidade** com [indicadores fundamentalistas](/blog/guia-completo-indicadores-fundamentalistas-bovespa) 3. **Compare** com média histórica da empresa 4. **Analise** razões para desconto (temporárias vs permanentes) ### Growth Investing: Crescimento Sustentável 1. **Aceite P/L** até 30x para empresas crescendo >25% aa 2. **Calcule PEG** para validar se crescimento justifica múltiplo 3. **Monitore** sustentabilidade das margens 4. **Acompanhe** evolução competitiva do setor ## Casos Reais do Mercado Brasileiro: Aprendizados ### Caso 1: Armadilha do Value (P/L Baixo) **Situação**: Siderúrgica com P/L 3x durante alta do minério **Lição**: Lucros cíclicos no pico podem criar falsa impressão de barganha **Solução**: Analisar P/L médio dos últimos 5-7 anos ### Caso 2: Growth Justificado (P/L Alto) **Situação**: Fintech com P/L 25x mas crescendo 50% aa **Lição**: Alto P/L pode ser razoável se crescimento for sustentável **Solução**: Acompanhar evolução do PEG ao longo do tempo ## FAQ: Perguntas Frequentes sobre P/L ### O que é um P/L bom para investir? Não existe um P/L universalmente "bom". Depende do setor e contexto. Para **value investing**, procure P/L \< 15x em empresas sólidas. Para **growth investing**, P/L até 25-30x pode ser aceitável se o crescimento justificar. ### P/L negativo significa que a ação é ruim? P/L negativo indica que a empresa teve prejuízo nos últimos 12 meses. Não necessariamente é ruim se for temporário ou se a empresa estiver investindo em crescimento. Analise as causas do prejuízo. ### Qual a diferença entre P/L e PEG? P/L compara preço com lucro atual. PEG ajusta o P/L pela taxa de crescimento dos lucros. **Fórmula PEG**: P/L ÷ Taxa de Crescimento. PEG \< 1 indica possível subvalorização. ### Como comparar P/L de empresas de setores diferentes? Não compare diretamente. Cada setor tem características próprias. Bancos têm P/L naturalmente baixo (5-12x), enquanto tecnologia tem P/L alto (20-40x). Compare sempre dentro do mesmo setor. ### P/L baixo sempre indica oportunidade de compra? Não. P/L baixo pode indicar problemas fundamentais, expectativa de redução nos lucros ou empresa em setor em declínio. **Sempre investigue** as razões por trás do P/L baixo. ### Com que frequência devo acompanhar o P/L das minhas ações? Para investimentos de longo prazo, acompanhe trimestralmente após divulgação de resultados. Para trading, monitore diariamente. Use a [API brapi.dev](/docs/acoes) para automatizar este acompanhamento. ### P/L forward é mais confiável que P/L trailing? Depende do contexto. P/L trailing usa dados auditados (mais confiável), mas P/L forward considera expectativas futuras (mais relevante para decisões). **Ideal**: analisar ambos. ### Como calcular P/L se a empresa tem prejuízo? Com prejuízo, o P/L fica negativo ou indefinido. Nestes casos, use outros múltiplos como [P/VP](/blog/como-usar-indicador-pvp-valor-patrimonial-analise-acoes), P/Vendas ou [EV/EBITDA](/blog/enterprise-value-ev-como-calcular-valor-real-empresa). ## Ferramentas Avançadas para Análise de P/L ### Screener Automático com brapi.dev ```python def screener_pl_avancado(token=''): """Screener automático baseado em P/L setorial""" setores = { 'financials': {'min_pl': 4, 'max_pl': 12}, 'technology': {'min_pl': 15, 'max_pl': 35}, 'utilities': {'min_pl': 8, 'max_pl': 18}, 'materials': {'min_pl': 5, 'max_pl': 15} } oportunidades = [] # Lista de ações por setor (simplificado) acoes_setor = { 'financials': ['ITUB4', 'BBDC4', 'BBAS3'], 'technology': ['LWSA3', 'MGLU3', 'PETZ3'], 'utilities': ['EGIE3', 'CPLE6', 'ENBR3'], 'materials': ['VALE3', 'PETR4', 'USIM5'] } for setor, acoes in acoes_setor.items(): for acao in acoes: resultado = analisar_pl_acao(acao, token) if resultado and 'pe_atual' in resultado: pl = resultado['pe_atual'] if (setores[setor]['min_pl'] <= pl <= setores[setor]['max_pl']): oportunidades.append({ 'ticker': acao, 'setor': setor, 'pl': pl, 'status': 'Dentro da faixa setorial' }) return sorted(oportunidades, key=lambda x: x['pl']) ``` ### Dashboard de Monitoramento Crie um dashboard para acompanhar seus P/Ls favoritos usando dados em tempo real da brapi.dev: ```javascript // Exemplo de dashboard React import { useEffect, useState } from 'react'; function PLDashboard() { const [dados, setDados] = useState([]); const watchlist = ['ITUB4', 'PETR4', 'VALE3', 'MGLU3']; useEffect(() => { const buscarDados = async () => { const resultados = await Promise.all( watchlist.map(async (ticker) => { const response = await fetch( `https://brapi.dev/api/quote/${ticker}?modules=defaultKeyStatistics` ); const data = await response.json(); return { ticker, pl: data.results[0]?.defaultKeyStatistics?.trailingPE || 0, preco: data.results[0]?.regularMarketPrice || 0 }; }) ); setDados(resultados); }; buscarDados(); const interval = setInterval(buscarDados, 300000); // Atualiza a cada 5min return () => clearInterval(interval); }, []); return ( <div> <h2>Monitoramento P/L - Atualizado em Tempo Real</h2> {dados.map(item => ( <div key={item.ticker}> <strong>{item.ticker}</strong>: P/L {item.pl.toFixed(2)}x | Preço R$ {item.preco.toFixed(2)} </div> ))} </div> ); } ``` ## Conclusão: Dominando o P/L para Investir Melhor em 2025 O indicador P/L é **a ferramenta mais importante** para análise fundamentalista de ações na B3. Dominar seu uso adequadamente pode ser a diferença entre investimentos lucrativos e decisões precipitadas. ### Pontos-Chave para Aplicação Prática: 1. **Contextualize sempre** com o setor de atuação 2. **Combine** com outros múltiplos para análise completa 3. **Monitore tendências** históricas, não apenas valores pontuais 4. **Use PEG Ratio** para empresas em crescimento 5. **Automatize** análises com ferramentas como brapi.dev ### Próximos Passos Recomendados: * **Explore nossa API**: Acesse dados de P/L em tempo real com a [brapi.dev API](/docs/acoes) * **Aprofunde conhecimento**: Leia sobre [outros indicadores fundamentalistas](/blog/guia-completo-indicadores-fundamentalistas-bovespa) * **Construa análises**: Use nossa [plataforma de cotações](/quotes) para screeners personalizados * **Diversifique análise**: Combine com [análise setorial](/blog/analise-setorial-acoes-como-comparar-empresas-mesmo-segmento-b3) ### Lembre-se Sempre: **O P/L é um ponto de partida, não uma decisão final.** Combine análise fundamentalista com gestão de risco adequada e diversificação de carteira. No mercado brasileiro, onde volatilidade é alta, uma abordagem sistemática baseada em múltiplos é essencial para o sucesso de longo prazo. **Começe hoje**: Use os códigos deste guia para implementar suas próprias análises automatizadas e tome decisões mais informadas sobre seus investimentos na B3. # Enterprise Value 2025: Como Calcular o Valor Real de Empresas na B3 URL: /blog/enterprise-value-ev-como-calcular-valor-real-empresa.mdx Domine o Enterprise Value (EV) para valuation preciso! Aprenda EV/EBITDA, EV/Receita e como avaliar o valor real de empresas. Guia completo com API brapi.dev ✓ *** searchable: true title: 'Enterprise Value 2025: Como Calcular o Valor Real de Empresas na B3' description: 'Domine o Enterprise Value (EV) para valuation preciso! Aprenda EV/EBITDA, EV/Receita e como avaliar o valor real de empresas. Guia completo com API brapi.dev ✓' date: '2025-08-22' keywords: 'enterprise value, EV, valor da empresa, EV/EBITDA, valuation, análise fundamentalista, múltiplos, B3, valor real empresa, estrutura capital, brapi' author: 'Equipe brapi.dev' category: 'Valuation e Análise' subcategory: 'Múltiplos de Valuation' readingTime: '20 min' tags: \['Enterprise Value', 'Valuation', 'EV/EBITDA', 'B3', 'Análise Fundamentalista', 'Múltiplos', 'Valor Real', 'Estrutura Capital'] relatedPosts: \['entendendo-indicador-preco-lucro-pl-analise-fundamentalista', 'roe-return-equity-como-avaliar-eficiencia-gestao-empresarial', 'ebitda-ebit-como-analisar-eficiencia-operacional-empresas'] featured: true expertise: 'Valuation e análise de estrutura de capital com 8+ anos de experiência no mercado brasileiro' lastReviewed: '2025-08-22' -------------------------- import { Authors, Author } from '~/components/Authors'; # Enterprise Value 2025: Como Calcular o Valor Real de Empresas na B3 > O Enterprise Value (EV) é a métrica mais precisa para avaliar o valor real de uma empresa, considerando dívidas e caixa. Aprenda como usar EV/EBITDA e outros múltiplos para valuation superior na B3 em 2025. *** ## O que é Enterprise Value e Por Que é Superior ao Market Cap? **O Enterprise Value (EV) representa o valor total necessário para comprar uma empresa inteira**, incluindo suas dívidas e descontando o caixa disponível. É mais preciso que o valor de mercado (market cap) para comparações entre empresas. **Analogia prática:** Se você fosse comprar uma empresa, pagaria o valor das ações (market cap) mais assumiria as dívidas, mas ficaria com o caixa. Essa é exatamente a lógica do EV. ### Por Que EV é Fundamental para Valuation? 1. **Elimina distorções** da estrutura de capital 2. **Permite comparações** entre empresas com diferentes níveis de endividamento 3. **Base** para múltiplos operacionais como EV/EBITDA 4. **Métrica real** para fusões e aquisições 5. **Considera** toda a estrutura financeira da empresa ### Fórmula do Enterprise Value ``` EV = Valor de Mercado + Dívida Total - Caixa e Equivalentes ``` **Componentes detalhados:** * **Valor de Mercado**: Preço da ação × Número de ações em circulação * **Dívida Total**: Dívidas de curto + longo prazo * **Caixa**: Caixa, bancos e aplicações financeiras ### Exemplo Prático **Empresa XPTO:** * Valor de mercado: R$ 10 bilhões * Dívida total: R$ 3 bilhões * Caixa: R$ 1 bilhão * **EV = 10 + 3 - 1 = R$ 12 bilhões** ## Por que o EV é Superior ao Market Cap? ### 1. Considera a Estrutura de Capital O EV leva em conta como a empresa é financiada, não apenas o valor das ações. ### 2. Facilita Comparações Permite comparar empresas com diferentes níveis de endividamento de forma mais justa. ### 3. Perspectiva do Comprador Representa o valor real que um comprador pagaria para adquirir toda a empresa. ### 4. Base para Múltiplos Operacionais Usado em múltiplos como EV/EBITDA que eliminam distorções da estrutura de capital. ## Acessando Dados de EV via brapi.dev A [API da brapi.dev](/docs/acoes) fornece dados necessários para calcular o Enterprise Value: ### Consultando Dados via API ```bash curl "https://brapi.dev/api/quote/PETR4?modules=defaultKeyStatistics,financialData,balanceSheetHistory" ``` **Resposta com dados para EV:** ```json { "results": [{ "symbol": "PETR4", "marketCap": 458740000000, "sharesOutstanding": 13032000000, "defaultKeyStatistics": { "enterpriseValue": 459590000000, "totalCash": 45230000000, "totalDebt": 46080000000 }, "financialData": { "totalCash": 45230000000, "totalDebt": 46080000000, "enterpriseValue": 459590000000 } }] } ``` ### Calculando EV Automaticamente ```javascript async function calcularEV(ticker) { const response = await fetch(`https://brapi.dev/api/quote/${ticker}?modules=defaultKeyStatistics,financialData`); const data = await response.json(); const dados = data.results[0]; const marketCap = dados.marketCap; const totalDebt = dados.defaultKeyStatistics.totalDebt || 0; const totalCash = dados.defaultKeyStatistics.totalCash || 0; const ev = marketCap + totalDebt - totalCash; return { ticker, marketCap: marketCap / 1e9, // Em bilhões totalDebt: totalDebt / 1e9, totalCash: totalCash / 1e9, enterpriseValue: ev / 1e9, estruturaCapital: { percentualDivida: (totalDebt / (marketCap + totalDebt)) * 100, liquidezRelativa: (totalCash / totalDebt) * 100 } }; } ``` ## Principais Múltiplos de Enterprise Value ### 1. EV/EBITDA ``` EV/EBITDA = Enterprise Value ÷ EBITDA ``` **Vantagens:** * Elimina diferenças de estrutura de capital * Não afetado por depreciação e amortização * Ideal para comparar empresas de capital intensivo **Interpretação:** * **\< 10x**: Potencialmente subvalorizada * **10-15x**: Valoração razoável * **> 20x**: Pode estar cara ### 2. EV/Receita ``` EV/Receita = Enterprise Value ÷ Receita Líquida ``` **Uso:** * Empresas com margens temporariamente baixas * Startups em crescimento * Comparação entre empresas do mesmo setor ### 3. EV/FCL (Fluxo de Caixa Livre) ``` EV/FCL = Enterprise Value ÷ Fluxo de Caixa Livre ``` **Características:** * Mostra quantos anos para recuperar investimento * Considera investimentos em capex * Ideal para empresas maduras ## Análise Setorial com EV ### Bancos - Cuidados Especiais **Peculiaridades:** * Dívida faz parte do modelo de negócio * EV não é aplicável da forma tradicional * Usar P/VP e ROE para análise ### Utilities - EV/EBITDA Relevante **Características:** * Alto investimento em ativos * Fluxo de caixa previsível * EV/EBITDA entre 8-12x é normal **Exemplo:** EGIE3, SBSP3, CPLE6 ### Tecnologia - EV/Receita Importante **Características:** * Margens variáveis * Crescimento acelerado * EV/Receita pode ser mais relevante que EV/EBITDA **Exemplo:** TOTS3, LWSA3 ### Commodities - Atenção ao Ciclo **Características:** * Margens cíclicas * EV deve considerar ciclo de preços * Usar médias de longo prazo **Exemplo:** VALE3, CSNA3 ## Screening de Ações com EV ### Critérios de Filtragem por EV ```python def screening_ev(lista_acoes): oportunidades = [] for ticker in lista_acoes: dados = calcular_metricas_ev(ticker) # Critérios básicos if dados['ev_ebitda'] < 15 and dados['ev_receita'] < 3: # Verificar qualidade da empresa if dados['roe'] > 10 and dados['margem_ebitda'] > 10: oportunidades.append({ 'ticker': ticker, 'ev_ebitda': dados['ev_ebitda'], 'ev_receita': dados['ev_receita'], 'ev_fcl': dados['ev_fcl'], 'qualidade': 'Alta' if dados['roe'] > 15 else 'Média' }) return sorted(oportunidades, key=lambda x: x['ev_ebitda']) ``` ### Dashboard de Monitoramento ```typescript const DashboardEV = ({ setorFoco }) => { const [dados, setDados] = useState([]); useEffect(() => { const buscarDadosEV = async () => { const acoes = obterAcoesSetor(setorFoco); const resultados = []; for (const ticker of acoes) { const ev = await calcularEV(ticker); const multiplos = await calcularMultiplosEV(ticker); resultados.push({ ...ev, ...multiplos, atratividade: avaliarAtratividade(multiplos) }); } setDados(resultados.sort((a, b) => a.ev_ebitda - b.ev_ebitda)); }; buscarDadosEV(); }, [setorFoco]); return ( ); }; ``` ## Enterprise Value vs Market Cap ### Quando Usar Cada Um #### Market Cap é melhor para: * Comparar retorno aos acionistas * Calcular P/L, P/VP * Análise de dividendos * Valoração de bancos #### Enterprise Value é melhor para: * Comparar empresas operacionais * Múltiplos operacionais (EV/EBITDA) * Análises de M\&A * Empresas com dívidas significativas ### Exemplo Comparativo **Empresa A:** * Market Cap: R$ 5 bi * Dívida: R$ 8 bi * Caixa: R$ 1 bi * **EV: R$ 12 bi** **Empresa B:** * Market Cap: R$ 10 bi * Dívida: R$ 1 bi * Caixa: R$ 2 bi * **EV: R$ 9 bi** **Análise:** Pelo Market Cap, B é 2x maior que A. Pelo EV, A é maior que B, refletindo sua alta alavancagem. ## Armadilhas na Análise de EV ### 1. Empresas com Caixa Excessivo **Problema:** Caixa improdutivo pode distorcer múltiplos **Solução:** * Analisar origem do caixa * Verificar planos de uso * Considerar EV ajustado ### 2. Dívidas Off-Balance **Problema:** Arrendamentos e outras obrigações não capturadas **Solução:** * Incluir arrendamentos operacionais * Considerar garantias e avais * Analisar notas explicativas ### 3. Ciclos de Commodity **Problema:** EBITDA pode estar artificialmente alto/baixo **Solução:** * Usar EBITDA normalizado * Considerar média de ciclo completo * Analisar múltiplos através do tempo ## Estratégias de Investimento com EV ### 1. Value Investing com EV **Critérios:** * EV/EBITDA \< 8x * EV/FCL \< 15x * Empresa sólida em setor estável * Gestão eficiente ### 2. Growth at Reasonable Price (GARP) **Critérios:** * EV/Receita razoável para o crescimento * EBITDA crescente * Mercado em expansão * Vantagem competitiva ### 3. Turnaround Situations **Critérios:** * EV baixo por problemas temporários * Nova gestão ou estratégia * Ativos de qualidade * Setor em recuperação ## Calculadora de Enterprise Value ### Ferramenta Web Simples ```htmlAnálise EV - {setorFoco}
{dados.map(item => ( Ticker EV (R$ bi) EV/EBITDA EV/Receita Atratividade ))} {item.ticker} {item.enterpriseValue.toFixed(1)} {item.ev_ebitda.toFixed(1)}x {item.ev_receita.toFixed(1)}x {item.atratividade === 'Alta' ? '🟢' : item.atratividade === 'Média' ? '🟡' : '🔴'} Calculadora Enterprise Value ``` ## Casos Práticos no Mercado Brasileiro ### Caso 1: Utility com Dívida Alta **EGIE3 - Engie Brasil** * Market Cap: R$ 42 bi * Dívida: R$ 15 bi * Caixa: R$ 3 bi * **EV: R$ 54 bi** * **EV/EBITDA: 5,1x** - Atrativo para o setor ### Caso 2: Empresa com Muito Caixa **PETR4 - Petrobras** * Market Cap: R$ 459 bi * Dívida: R$ 46 bi * Caixa: R$ 45 bi * **EV: R$ 460 bi** * **Análise:** Caixa elevado protege contra ciclos ## Monitoramento e Alertas ### Alertas Automáticos ```python def monitorar_oportunidades_ev(): watchlist = ['EGIE3', 'SBSP3', 'CPLE6', 'TOTS3'] oportunidades = [] for ticker in watchlist: metricas = calcular_metricas_ev(ticker) # Critérios de oportunidade if (metricas['ev_ebitda'] < 10 and metricas['crescimento_receita'] > 5 and metricas['margem_ebitda'] > 15): oportunidades.append({ 'ticker': ticker, 'ev_ebitda': metricas['ev_ebitda'], 'recomendacao': 'ANALISAR' }) if oportunidades: enviar_alerta(oportunidades) ``` ## Conclusão O Enterprise Value é uma métrica fundamental para análise de investimentos que oferece uma visão mais completa do valor real das empresas. Ao considerar a estrutura de capital, permite comparações mais justas e múltiplos mais relevantes. ### Pontos-Chave: 1. **EV considera dívida e caixa** além do valor de mercado 2. **Múltiplos de EV eliminam** distorções de estrutura de capital 3. **Essencial para análises** de M\&A e comparações setoriais 4. **Complementar ao Market Cap**, não substituto ### Próximos Passos: * Explore nossa [API completa](/docs) para dados de EV * Use nossa [plataforma](/quotes) para análise comparativa * Aprenda sobre [múltiplos de valuation](/blog/multiplos-valuation-analise-acoes-brasileiras) **Lembre-se:** Enterprise Value é uma ferramenta poderosa, mas deve ser usada em conjunto com análise qualitativa e outros indicadores fundamentalistas. # Como Importar Cotações da B3 no Excel: Power Query 2025 URL: /blog/excel-cotacoes-b3-power-query-vba.mdx Aprenda a importar cotações automáticas da B3 no Microsoft Excel usando Power Query e VBA. Tutorial completo para planilhas financeiras profissionais. *** searchable: true title: 'Como Importar Cotações da B3 no Excel: Power Query 2025' description: 'Aprenda a importar cotações automáticas da B3 no Microsoft Excel usando Power Query e VBA. Tutorial completo para planilhas financeiras profissionais.' date: '2025-10-12' keywords: 'excel cotações, power query b3, vba cotações, excel api, planilha investimentos, brapi excel' author: 'Equipe brapi.dev' category: 'Tutoriais e Integrações' subcategory: 'Planilhas e Automação' readingTime: '7 min' tags: \['Excel', 'Power Query', 'VBA', 'Automação', 'Planilhas'] relatedPosts: \['integracao-google-sheets-cotacoes-b3-tutorial-completo', 'api-b3-python-requests-guia-pratico'] featured: false expertise: 'Automação de planilhas Excel - 8+ anos' lastReviewed: '2025-10-12' -------------------------- import { Author, Authors } from '~/components/Authors'; # Como Importar Cotações da B3 no Microsoft Excel > Aprenda a criar planilhas profissionais com cotações automáticas da B3 usando Power Query e VBA.Calculadora Enterprise Value
## Por Que Excel para Investimentos? O Microsoft Excel continua sendo uma das ferramentas mais populares para acompanhar investimentos. Com a integração da brapi.dev, você pode: * Importar cotações automáticas da B3 * Atualizar dados com um clique * Criar dashboards profissionais * Fazer análises avançadas * Integrar com Power BI ## Método 1: Power Query (Recomendado) O Power Query permite importar dados JSON sem programação. ### Passo a Passo 1. Abra o Excel e vá para a guia **Dados** 2. Clique em **Obter Dados** > **De Outras Fontes** > **Da Web** 3. Insira a URL: ``` https://brapi.dev/api/quote/PETR4?token=SEU_TOKEN ``` 4. Clique em **OK** 5. O Power Query abrirá mostrando os dados JSON 6. Clique em **Converter** > **Para Tabela** 7. Expanda a coluna **results** clicando na seta dupla 8. Selecione os campos que deseja (symbol, regularMarketPrice, etc.) 9. Clique em **Fechar e Carregar** ### Múltiplos Ativos Para importar várias ações de uma vez: ``` https://brapi.dev/api/quote/PETR4,VALE3,ITUB4,BBDC4?token=SEU_TOKEN ``` ### Atualização Automática 1. Clique com botão direito na tabela 2. Selecione **Atualizar** 3. Ou vá em **Consultas e Conexões** > **Propriedades da Conexão** 4. Configure atualização automática: * ✅ Atualizar dados ao abrir o arquivo * ✅ Atualizar dados a cada X minutos ### Exemplo de Estrutura Após importar, sua tabela ficará assim: | symbol | shortName | regularMarketPrice | regularMarketChangePercent | currency | | ------ | ------------ | ------------------ | -------------------------- | -------- | | PETR4 | PETROBRAS PN | 38.45 | 2.15 | BRL | | VALE3 | VALE ON | 62.30 | -0.85 | BRL | ## Método 2: VBA Avançado Para mais controle, use VBA (Visual Basic for Applications). ### Código VBA Completo Pressione `Alt + F11` para abrir o editor VBA e cole: ```vb ' Requer biblioteca VBA-JSON: https://github.com/VBA-tools/VBA-JSON Function GetBrapiQuote(ticker As String, Optional field As String = "regularMarketPrice") As Variant On Error GoTo ErrorHandler Dim http As Object Dim json As Object Dim token As String Dim url As String ' Configure seu token aqui ou em uma célula token = ThisWorkbook.Sheets("Config").Range("A1").Value ' Monta URL url = "https://brapi.dev/api/quote/" & ticker & "?token=" & token ' Faz requisição Set http = CreateObject("MSXML2.XMLHTTP") http.Open "GET", url, False http.Send ' Verifica resposta If http.Status = 200 Then Set json = JsonConverter.ParseJson(http.responseText) ' Retorna campo solicitado If field = "regularMarketPrice" Then GetBrapiQuote = json("results")(1)("regularMarketPrice") ElseIf field = "symbol" Then GetBrapiQuote = json("results")(1)("symbol") ElseIf field = "shortName" Then GetBrapiQuote = json("results")(1)("shortName") ElseIf field = "regularMarketChangePercent" Then GetBrapiQuote = json("results")(1)("regularMarketChangePercent") Else GetBrapiQuote = json("results")(1)(field) End If Else GetBrapiQuote = "Erro HTTP " & http.Status End If Exit Function ErrorHandler: GetBrapiQuote = "Erro: " & Err.Description End Function ' Sub para atualizar todas as cotações Sub AtualizarCotacoes() Application.CalculateFull MsgBox "Cotações atualizadas!", vbInformation End Sub ``` ### Biblioteca VBA-JSON 1. Baixe [VBA-JSON](https://github.com/VBA-tools/VBA-JSON) 2. Importe o arquivo `JsonConverter.bas` no seu projeto VBA 3. Em Ferramentas > Referências, ative "Microsoft Scripting Runtime" ### Uso das Funções VBA Na planilha: ``` =GetBrapiQuote("PETR4"; "regularMarketPrice") =GetBrapiQuote("PETR4"; "shortName") =GetBrapiQuote("PETR4"; "regularMarketChangePercent") ``` ### Estrutura Recomendada **Aba "Config":** | A | B | | ---------------- | ------------ | | SEU\_TOKEN\_AQUI | Token da API | **Aba "Cotações":** | A (Ticker) | B (Nome) | C (Preço) | D (Variação %) | | ---------- | ------------------------------ | --------------------------------------- | ----------------------------------------------- | | PETR4 | =GetBrapiQuote(A2;"shortName") | =GetBrapiQuote(A2;"regularMarketPrice") | =GetBrapiQuote(A2;"regularMarketChangePercent") | ## Método 3: Fórmulas Dinâmicas (Excel 365) Se você tem Excel 365, pode usar fórmulas dinâmicas: ``` =FILTERXML( WEBSERVICE("https://brapi.dev/api/quote/PETR4?token=SEU_TOKEN"), "//regularMarketPrice" ) ``` **Nota:** Esta abordagem é limitada pois a API retorna JSON, não XML. ## Dashboard Profissional ### Estrutura de Abas 1. **Config** - Token e configurações 2. **Cotações** - Dados brutos atualizados 3. **Dashboard** - Visualizações e gráficos 4. **Histórico** - Registro de preços diários ### Formatação Condicional Para destacar variações: 1. Selecione a coluna de variação percentual 2. Formatação Condicional > Nova Regra 3. Configure: * Verde se > 0 * Vermelho se \< 0 ### Gráficos Recomendados * **Gráfico de Pizza:** Distribuição da carteira * **Gráfico de Barras:** Performance por ativo * **Gráfico de Linha:** Evolução histórica ## Botão de Atualização Adicione um botão para atualizar dados: 1. Guia **Desenvolvedor** > **Inserir** > **Botão** 2. Desenhe o botão na planilha 3. Atribua a macro `AtualizarCotacoes` Código do botão: ```vb Sub AtualizarTudo() ' Atualiza Power Query ActiveWorkbook.RefreshAll ' Atualiza fórmulas VBA Application.CalculateFull ' Atualiza timestamp ThisWorkbook.Sheets("Dashboard").Range("A1").Value = "Última atualização: " & Now() MsgBox "Dados atualizados!", vbInformation End Sub ``` ## Salvando Histórico Automático ```vb Sub SalvarHistorico() Dim wsOrigem As Worksheet Dim wsHistorico As Worksheet Dim ultimaLinha As Long Set wsOrigem = ThisWorkbook.Sheets("Cotações") Set wsHistorico = ThisWorkbook.Sheets("Histórico") ultimaLinha = wsHistorico.Cells(Rows.Count, 1).End(xlUp).Row + 1 ' Copia dados com timestamp wsHistorico.Cells(ultimaLinha, 1).Value = Now() wsOrigem.Range("A2:D10").Copy wsHistorico.Cells(ultimaLinha, 2) MsgBox "Histórico salvo!", vbInformation End Sub ``` ## Integração com Power BI 1. No Power BI Desktop, clique em **Obter Dados** > **Excel** 2. Selecione sua planilha Excel 3. Importe as tabelas desejadas 4. Configure atualização automática no Power BI Service ## Dicas de Performance ### 1. Use Cache Evite atualizar a cada célula recalculada: ```vb ' No início da função Static cache As Object Static cacheTime As Date If DateDiff("s", cacheTime, Now()) < 60 Then ' Retorna do cache se menos de 60 segundos GetBrapiQuote = cache(ticker & "_" & field) Exit Function End If ``` ### 2. Desative Cálculo Automático Para planilhas grandes: * Fórmulas > Opções de Cálculo > Manual * Use Ctrl+Alt+F9 para recalcular quando necessário ### 3. Use Tabelas Converta ranges em tabelas (Ctrl+T) para melhor performance. ## Exemplos Práticos ### Carteira de Investimentos | Ticker | Quantidade | Preço Médio | Preço Atual | Lucro/Prejuízo | % | | ------ | ---------- | ----------- | ------------------ | -------------- | ----------- | | PETR4 | 100 | 35.00 | =GetBrapiQuote(A2) | =(D2-C2)\*B2 | =(D2-C2)/C2 | ### Monitor de Mercado Configure cores automáticas: * 🟢 Verde: Variação > 2% * 🟡 Amarelo: Variação entre -2% e 2% * 🔴 Vermelho: Variação \< -2% ## Troubleshooting ### Erro: "Não é possível se conectar" * Verifique sua conexão com internet * Confirme que o token está correto ### Erro: "Método não encontrado" * Instale a biblioteca VBA-JSON * Ative "Microsoft Scripting Runtime" ### Dados não atualizam * Verifique se atualização automática está habilitada * Clique em "Atualizar Tudo" manualmente ## Comparação: Excel vs Google Sheets | Recurso | Excel | Google Sheets | | ----------- | ----------- | ------------- | | Power Query | ✅ Sim | ❌ Não | | VBA | ✅ Sim | ❌ Apps Script | | Offline | ✅ Sim | ❌ Não | | Colaboração | ⚠️ Limitado | ✅ Excelente | | Gratuito | ❌ Pago | ✅ Sim | ## Próximos Passos * [Veja integração com Google Sheets](/docs/examples/google-sheets) * [Aprenda Python para análises](/docs/examples/python) * [Explore a documentação](/docs) ## Conclusão O Excel é uma ferramenta poderosa para acompanhar investimentos. Com Power Query e VBA, você pode criar planilhas profissionais com dados sempre atualizados da B3. **Comece agora:** Escolha o método que melhor se adequa às suas necessidades e crie sua planilha de investimentos! # brapi Aceita no Microsoft for Startups 2025: Nova Fase de Crescimento URL: /blog/fomos-aceitos-no-programa-microsoft-for-startups.mdx A brapi foi aceita no Microsoft for Startups! Conheça os benefícios, parcerias e como isso impulsiona nossa API financeira com tecnologia Azure e IA de ponta ✓ *** searchable: true title: 'brapi Aceita no Microsoft for Startups 2025: Nova Fase de Crescimento' description: 'A brapi foi aceita no Microsoft for Startups! Conheça os benefícios, parcerias e como isso impulsiona nossa API financeira com tecnologia Azure e IA de ponta ✓' date: '2025-01-21' keywords: 'Microsoft for Startups, brapi Microsoft, parceria tecnológica, Azure brapi, startup brasileira, API financeira Microsoft, crescimento tech Brasil' author: 'Equipe brapi.dev' category: 'Empresa e Novidades' subcategory: 'Parcerias e Crescimento' readingTime: '6 min' tags: \['Microsoft', 'Startups', 'Parceria', 'Azure', 'Crescimento', 'Tecnologia', 'IA', 'Empresa'] relatedPosts: \['como-a-brapi-pode-facilitar-suas-analises-financeiras', 'acesso-gratuito-ilimitado-acoes-teste-brapi', 'como-usar-api-brapi-analise-acoes-guia-completo-desenvolvedores'] featured: false expertise: 'Equipe executiva da brapi.dev com foco em parcerias estratégicas e crescimento tecnológico' lastReviewed: '2025-01-21' -------------------------- import { Author, Authors } from '~/components/Authors'; # Fomos aceitos no programa Microsoft for Startups > A Brapi iniciou uma nova etapa ao ser aceita no programa Microsoft for > Startups! Essa parceria ajuda a Brapi a avançar em soluções tecnológicas, > utilizando toda a infraestrutura da Azure, além de mentoria técnica 1:1 e uso > de tecnologias de ponta como a IA da Azure/OpenAI. A Brapi foi aceita no programa Microsoft for Startups, uma parceria que traz benefícios essenciais para o crescimento da empresa. Essa parceria traz um investimento de até US$150.000 para uso na Azure, além de mentoria técnica 1:1, suporte de vendas e marketing, acesso a novas tecnologias, rede de contatos e outras vantagens que reforçam nossos planos de avanço em soluções tecnológicas, incluindo gerenciamento dos dados financeiros com o desenvolvimento de novas soluções de IA.  O Founders Hub da Microsoft for Startups oferece recursos essenciais para startups em expansão, como rede de contatos estratégicos e ferramentas modernas. Com esses benefícios, a Brapi deseja aprimorar ainda mais suas plataformas e desenvolver soluções inovadoras para o mercado financeiro. Entrar nesse programa reforça nossa dedicação em levar soluções de qualidade ao público. Mantemos nossa missão de oferecer suporte relevante a investidores e entusiastas do mercado, agora com o suporte direto da Microsoft. O Microsoft for Startups abre um leque de oportunidades para a Brapi impulsionar seus produtos, fortalecer seu crescimento e alcançar novos patamares de excelência, inclusive já estamos utilizando parte do investimento para desenvolver novas soluções de IA para aprimorar a experiência dos usuários e a qualidade dos dados financeiros disponíveis. # Fórmula de Graham 2025: Como Calcular Valor Intrínseco de Ações URL: /blog/formula-graham-como-calcular-preco-justo-acoes-value-investing.mdx Domine a Fórmula de Graham para value investing! Aprenda como Benjamin Graham calcula preço justo e valor intrínseco. Guia completo com exemplos práticos na B3 ✓ *** searchable: true title: 'Fórmula de Graham 2025: Como Calcular Valor Intrínseco de Ações' description: 'Domine a Fórmula de Graham para value investing! Aprenda como Benjamin Graham calcula preço justo e valor intrínseco. Guia completo com exemplos práticos na B3 ✓' date: '2025-08-22' keywords: 'fórmula graham, benjamin graham, value investing, preço justo ações, valor intrínseco, análise fundamentalista, P/L, crescimento lucros, B3, brapi' author: 'Equipe brapi.dev' category: 'Value Investing' subcategory: 'Métodos de Valuation' readingTime: '17 min' tags: \['Fórmula Graham', 'Value Investing', 'Benjamin Graham', 'Preço Justo', 'B3', 'Valor Intrínseco', 'Valuation'] relatedPosts: \['entendendo-indicador-preco-lucro-pl-analise-fundamentalista', 'metodo-bazin-estrategia-renda-passiva-acoes-dividendos', 'analise-fundamentalista-acoes-indicadores-essenciais-investir-b3'] featured: true expertise: 'Estratégias de value investing com 8+ anos de experiência no mercado brasileiro' lastReviewed: '2025-08-22' -------------------------- import { Authors, Author } from '~/components/Authors'; # Fórmula de Graham: Como Calcular o Preço Justo de Ações usando Value Investing > A Fórmula de Graham, criada por Benjamin Graham - o "pai do value investing" - é uma das metodologias mais respeitadas para calcular o valor intrínseco de ações. Aprenda como aplicar esta ferramenta poderosa na análise de ações brasileiras e identificar oportunidades de investimento. *** ## O que é a Fórmula de Graham? A **Fórmula de Graham** é uma equação matemática desenvolvida por Benjamin Graham para estimar o valor intrínseco de uma ação com base em seus fundamentos financeiros. Esta fórmula combina a capacidade de geração de lucros da empresa com sua solidez patrimonial. ### A Fórmula Original ``` Valor Intrínseco = √(22,5 × LPA × VPA) ``` Onde: * **LPA**: Lucro Por Ação (últimos 12 meses) * **VPA**: Valor Patrimonial por Ação * **22,5**: Constante que representa P/L de 15 e P/VP de 1,5 ## Quem foi Benjamin Graham? **Benjamin Graham (1894-1976)** foi um economista e investidor britânico-americano, considerado o fundador da análise de valores mobiliários moderna. Suas principais contribuições incluem: ### Legado no Mercado Financeiro * **Mentor de Warren Buffett**: Influenciou diretamente o maior investidor da história * **"Security Analysis" (1934)**: Livro fundamental sobre análise de investimentos * **Value Investing**: Criou os princípios do investimento em valor ### Filosofia de Investimento Graham defendia que o mercado é frequentemente irracional no curto prazo, mas eficiente no longo prazo, criando oportunidades para investidores disciplinados. ## Como Funciona a Fórmula de Graham ### Os Componentes da Fórmula #### 1. Lucro Por Ação (LPA) * Representa a **rentabilidade** da empresa * Mede quanto lucro cada ação gera * Deve ser baseado em dados dos últimos 12 meses (TTM) #### 2. Valor Patrimonial por Ação (VPA) * Representa a **solidez patrimonial** * Mostra o valor contábil por ação * Funciona como "garantia" do investimento #### 3. A Constante 22,5 * **P/L de 15**: Múltiplo considerado razoável para empresas estáveis * **P/VP de 1,5**: Prêmio moderado sobre o valor contábil * **15 × 1,5 = 22,5**: Produto dos múltiplos ideais ## Calculando com a API brapi.dev A [API da brapi.dev](/docs/acoes) fornece todos os dados necessários para aplicar a Fórmula de Graham: ### Exemplo de Consulta ```bash curl "https://brapi.dev/api/quote/PETR4?modules=defaultKeyStatistics,financialData" ``` **Resposta com dados necessários:** ```json { "results": [{ "symbol": "PETR4", "regularMarketPrice": 35.20, "defaultKeyStatistics": { "earningsPerShare": 16.33, "bookValue": 59.17 } }] } ``` ### Aplicando a Fórmula ```javascript // Dados da PETR4 (exemplo) const LPA = 16.33; // Lucro por ação TTM const VPA = 59.17; // Valor patrimonial por ação // Fórmula de Graham const valorIntrinseco = Math.sqrt(22.5 * LPA * VPA); console.log(`Valor Intrínseco: R$ ${valorIntrinseco.toFixed(2)}`); // Resultado: R$ 147,47 const precoAtual = 35.20; const margem = ((valorIntrinseco - precoAtual) / precoAtual) * 100; console.log(`Margem de Segurança: ${margem.toFixed(1)}%`); ``` ## Interpretando os Resultados ### Margem de Segurança A diferença entre o preço atual e o valor calculado pela fórmula indica a **margem de segurança**: ``` Margem de Segurança = (Valor Intrínseco - Preço Atual) ÷ Preço Atual × 100 ``` **Interpretação:** * **Positiva**: Ação potencialmente subvalorizada * **Negativa**: Ação potencialmente sobrevalorizada * **Acima de 30%**: Excelente oportunidade segundo Graham ### Classificação de Oportunidades #### Forte Desconto (acima de 40%) * Oportunidade excepcional * Margem de segurança robusta * Prioridade máxima para análise #### Desconto Moderado (20% a 40%) * Boa oportunidade * Margem de segurança adequada * Análise detalhada recomendada #### Próximo ao Valor Justo (-10% a 20%) * Preço razoável * Pouca margem de segurança * Aguardar melhor oportunidade #### Sobrevalorizado (\<-10%) * Preço acima do valor estimado * Evitar ou aguardar correção * Risco elevado ## Limitações da Fórmula de Graham ### 1. Empresas em Crescimento A fórmula foi desenvolvida para empresas maduras e estáveis. Pode subestimar o valor de empresas em crescimento acelerado. ### 2. Setores Específicos Alguns setores têm características particulares que a fórmula não contempla: * **Bancos**: Estrutura de capital diferente * **Tecnologia**: Ativos intangíveis * **Commodities**: Volatilidade de preços ### 3. Dados Contábeis Baseada em valores contábeis que podem não refletir o valor real dos ativos. ## Adaptações Modernas da Fórmula ### Versão Revisada Alguns analistas propõem ajustes: ``` Valor Intrínseco = √(15 × LPA × VPA) × (Taxa de Crescimento + 8,5) ÷ 4,4 ``` ### Ajustes para Inflação Considerar o impacto da inflação nos cálculos: ``` Valor Ajustado = Valor Intrínseco × (Taxa de Juros Livre de Risco ÷ Rendimento AAA) ``` ## Aplicação Prática no Mercado Brasileiro ### Screening de Ações Use a [plataforma brapi.dev](/quotes) para identificar ações com: 1. **LPA positivo** e consistente 2. **VPA crescente** ao longo do tempo 3. **P/L entre 5 e 15** 4. **P/VP entre 0,5 e 2,0** ### Exemplo de Portfolio Graham #### Critérios de Seleção: * Margem de segurança mínima de 30% * LPA positivo nos últimos 3 anos * Endividamento controlado * Dividendos consistentes #### Setores Favoráveis: * **Utilities**: EGIE3, SBSP3, CPLE6 * **Bancos**: ITUB4, BBDC4, BBAS3 * **Consumo**: ABEV3, BRFS3, JBSS3 * **Varejo**: MGLU3, LREN3, AMER3 ## Ferramentas de Análise ### Calculadora Automática Desenvolva sua própria calculadora usando a API: ```python import requests def calcular_graham(ticker): url = f"https://brapi.dev/api/quote/{ticker}?modules=defaultKeyStatistics" response = requests.get(url) data = response.json() lpa = data['results'][0]['defaultKeyStatistics']['earningsPerShare'] vpa = data['results'][0]['defaultKeyStatistics']['bookValue'] preco = data['results'][0]['regularMarketPrice'] valor_intrinseco = (22.5 * lpa * vpa) ** 0.5 margem = ((valor_intrinseco - preco) / preco) * 100 return { 'ticker': ticker, 'preco_atual': preco, 'valor_intrinseco': valor_intrinseco, 'margem_seguranca': margem } # Exemplo de uso resultado = calcular_graham('PETR4') print(f"Margem de Segurança: {resultado['margem_seguranca']:.1f}%") ``` ### Screening Automatizado Crie alertas para oportunidades: ```javascript const tickers = ['PETR4', 'ITUB4', 'ABEV3', 'EGIE3']; tickers.forEach(async (ticker) => { const analise = await calcularGraham(ticker); if (analise.margemSeguranca > 30) { console.log(`🚨 Oportunidade: ${ticker} - ${analise.margemSeguranca}%`); } }); ``` ## Estratégias Complementares ### Combinando com Outros Indicadores #### 1. ROE (Return on Equity) * Mínimo de 15% nos últimos 3 anos * Consistência mais importante que picos #### 2. Dividend Yield * Preferir empresas que pagam dividendos * DY entre 4% e 8% é ideal #### 3. Crescimento dos Lucros * CAGR de lucros positivo nos últimos 5 anos * Previsibilidade dos resultados ### Diversificação Setorial Não concentre apenas em um setor: * 25% Financeiro * 25% Consumo * 25% Utilities * 25% Outros setores ## Casos de Estudo ### Caso 1: Empresa Subvalorizada **XPTO4** * LPA: R$ 12,00 * VPA: R$ 45,00 * Preço: R$ 25,00 * Graham: √(22,5 × 12 × 45) = R$ 110,45 * Margem: 342% - **Excelente oportunidade** ### Caso 2: Empresa Sobrevalorizada **ABCD3** * LPA: R$ 2,50 * VPA: R$ 15,00 * Preço: R$ 35,00 * Graham: √(22,5 × 2,5 × 15) = R$ 29,05 * Margem: -17% - **Evitar** ## Monitoramento e Alertas ### Acompanhamento Trimestral * Resultados trimestrais * Mudanças no LPA e VPA * Recálculo do valor intrínseco ### Alertas Automatizados Configure alertas para: * Margem de segurança > 30% * Entrada na faixa de compra * Deterioração dos fundamentos ## Conclusão A Fórmula de Graham continua sendo uma ferramenta valiosa para identificar ações subvalorizadas, especialmente quando combinada com análise qualitativa e outros indicadores. ### Pontos-Chave: 1. **Simplicidade**: Fórmula fácil de aplicar 2. **Conservadorismo**: Foca em empresas sólidas 3. **Margem de Segurança**: Protege contra erros de análise 4. **Complementar**: Deve ser usada com outros métodos ### Próximos Passos: * Explore nossa [API completa](/docs) para dados financeiros * Use nossa [plataforma](/quotes) para screening automatizado * Aprenda sobre [outros métodos de valuation](/blog/metodologias-valuation-acoes-brasileiras) **Lembre-se:** A Fórmula de Graham é um ponto de partida, não uma verdade absoluta. Sempre combine com análise qualitativa e gestão adequada de risco. # FIIs 2025: Guia Completo Fundos Imobiliários para Renda Passiva URL: /blog/fundos-imobiliarios-fiis-guia-completo-investir-renda-passiva.mdx Domine FIIs para renda passiva imobiliária! Aprenda análise de yield, vacância, P/VP, FFO e como construir carteira diversificada de fundos imobiliários ✓ *** searchable: true title: 'FIIs 2025: Guia Completo Fundos Imobiliários para Renda Passiva' description: 'Domine FIIs para renda passiva imobiliária! Aprenda análise de yield, vacância, P/VP, FFO e como construir carteira diversificada de fundos imobiliários ✓' date: '2025-08-22' keywords: 'FIIs, fundos imobiliários, renda passiva imobiliária, yield FII, vacância, P/VP FII, análise FII, investimento imobiliário, B3, dividend yield, brapi' author: 'Equipe brapi.dev' category: 'Fundos Imobiliários' subcategory: 'Renda Passiva Imobiliária' readingTime: '24 min' tags: \['FIIs', 'Fundos Imobiliários', 'Renda Passiva', 'Imobiliário', 'B3', 'Yield', 'Vacância', 'FFO'] relatedPosts: \['dividend-yield-dy-como-calcular-usar-analise-acoes-dividendos', 'metodo-bazin-estrategia-renda-passiva-acoes-dividendos', 'como-construir-carteira-investimentos-diversificada-brapi'] featured: true expertise: 'Investimentos imobiliários com 8+ anos de experiência no mercado brasileiro' lastReviewed: '2025-08-22' -------------------------- import { Authors, Author } from '~/components/Authors'; # Fundos Imobiliários (FIIs): Guia Completo para Investir em Renda Passiva Imobiliária > Os Fundos de Investimento Imobiliário (FIIs) são uma das melhores formas de investir no mercado imobiliário com baixo capital inicial. Entenda como analisar, selecionar e construir uma carteira de FIIs para gerar renda passiva mensal. *** ## O que são Fundos de Investimento Imobiliário (FIIs)? Os **Fundos de Investimento Imobiliário (FIIs)** são veículos de investimento que aplicam recursos em empreendimentos imobiliários ou títulos relacionados ao setor imobiliário. Funcionam como um condomínio de investidores que se unem para investir em imóveis. ### Características Principais dos FIIs #### 1. **Liquidez** * Negociados na B3 como ações * Facilidade de compra e venda * Não há carência ou prazo de resgate #### 2. **Renda Mensal** * Distribuição obrigatória de 95% do resultado * Pagamentos mensais ou bimestrais * Renda isenta de imposto de renda para pessoa física #### 3. **Diversificação** * Acesso a imóveis comerciais de alto valor * Diferentes segmentos imobiliários * Gestão profissional especializada #### 4. **Baixo Ticket de Entrada** * Cotas a partir de R$ 10-20 * Acesso democratizado ao mercado imobiliário * Possibilidade de diversificar com pouco capital ## Tipos de Fundos Imobiliários ### 1. **FIIs de Tijolo** **Características:** * Investem diretamente em imóveis físicos * Recebem aluguéis dos inquilinos * Maior estabilidade e previsibilidade **Subtipos:** ```python tipos_tijolo = { 'shoppings': { 'exemplos': ['HGRE11', 'MALL11', 'GGRC11'], 'caracteristicas': 'Renda baseada em aluguéis + % vendas', 'riscos': 'E-commerce, mudanças consumo' }, 'logisticos': { 'exemplos': ['HGLG11', 'XPLG11', 'BTLG11'], 'caracteristicas': 'Contratos longos, indexados', 'riscos': 'Localização, obsolescência' }, 'corporativos': { 'exemplos': ['HGCR11', 'VILG11', 'ALZR11'], 'caracteristicas': 'Contratos AAA, escritórios', 'riscos': 'Home office, ciclo econômico' }, 'residenciais': { 'exemplos': ['HGRU11', 'RBRL11', 'IRDM11'], 'caracteristicas': 'Apartamentos para locação', 'riscos': 'Vacância, inadimplência' } } ``` ### 2. **FIIs de Papel** **Características:** * Investem em títulos imobiliários (CRI, LCI, etc.) * Renda baseada em juros * Maior sensibilidade à taxa de juros **Exemplos:** KNCR11, MXRF11, RNGO11 ### 3. **FIIs Híbridos** **Características:** * Combinam investimentos em imóveis e papéis * Estratégia diversificada * Flexibilidade na gestão **Exemplos:** XPCI11, BCFF11, VISC11 ## Analisando FIIs com a API brapi.dev ### Consultando Dados de FIIs ```python import requests import pandas as pd def obter_dados_fii(ticker, token): """Obtém dados completos de um FII""" url = f"https://brapi.dev/api/quote/{ticker}?modules=defaultKeyStatistics,summaryProfile&token={token}" try: response = requests.get(url) data = response.json() fii = data['results'][0] stats = fii.get('defaultKeyStatistics', {}) profile = fii.get('summaryProfile', {}) return { 'ticker': ticker, 'nome': fii['shortName'], 'preco': fii['regularMarketPrice'], 'variacao': fii['regularMarketChangePercent'], 'volume': fii['regularMarketVolume'], 'dividend_yield': stats.get('dividendYield', 0) * 100, 'p_vp': stats.get('priceToBook', 0), 'patrimonio': stats.get('netAssets', 0) / 1e6, # Em milhões 'gestora': profile.get('longBusinessSummary', 'N/A'), 'setor': identificar_setor_fii(fii['shortName']) } except Exception as e: print(f"Erro ao obter dados de {ticker}: {e}") return None def identificar_setor_fii(nome): """Identifica setor do FII baseado no nome""" nome_lower = nome.lower() if any(palavra in nome_lower for palavra in ['shopping', 'mall', 'varejo']): return 'Shopping' elif any(palavra in nome_lower for palavra in ['logistic', 'logístic', 'galpão']): return 'Logístico' elif any(palavra in nome_lower for palavra in ['corporativ', 'escritório', 'laje']): return 'Corporativo' elif any(palavra in nome_lower for palavra in ['residencial', 'apartamento']): return 'Residencial' elif any(palavra in nome_lower for palavra in ['papel', 'renda', 'recebível']): return 'Papel' elif any(palavra in nome_lower for palavra in ['híbrido', 'multi']): return 'Híbrido' else: return 'Outros' # Exemplo de uso fii_data = obter_dados_fii('HGLG11', 'SEU_TOKEN') if fii_data: print(f"📊 Análise {fii_data['ticker']}") print(f"Nome: {fii_data['nome']}") print(f"Preço: R$ {fii_data['preco']:.2f}") print(f"Dividend Yield: {fii_data['dividend_yield']:.2f}%") print(f"P/VP: {fii_data['p_vp']:.2f}") print(f"Setor: {fii_data['setor']}") ``` ## Principais Indicadores para Análise de FIIs ### 1. Dividend Yield (DY) ``` DY = (Dividendos últimos 12 meses ÷ Preço da cota) × 100 ``` **Interpretação:** * **8-12%**: Yield atrativo para maioria dos FIIs * **Acima de 12%**: Investigar sustentabilidade * **Abaixo de 6%**: Pode indicar sobrevaloração ### 2. Preço/Valor Patrimonial (P/VP) ``` P/VP = Preço da cota ÷ Valor patrimonial por cota ``` **Interpretação:** * **Abaixo de 1,0**: FII negociado com desconto * **1,0-1,2**: Faixa considerada justa * **Acima de 1,5**: Possível sobrevaloração ### 3. Vacancy (Taxa de Vacância) ``` Vacancy = Área vaga ÷ Área total × 100 ``` **Benchmarks por setor:** * **Shoppings**: 5-15% * **Logísticos**: 0-10% * **Corporativos**: 10-20% ### 4. Liquidez * Volume médio diário * Número de negócios * Spread bid-ask ## Screening de FIIs ### Sistema de Filtros Automatizado ```python def screening_fiis(lista_fiis, criterios, token): """Faz screening de FIIs baseado em critérios""" fiis_aprovados = [] for ticker in lista_fiis: dados = obter_dados_fii(ticker, token) if not dados: continue # Aplicar filtros if (dados['dividend_yield'] >= criterios['dy_min'] and dados['dividend_yield'] <= criterios['dy_max'] and dados['p_vp'] >= criterios['pvp_min'] and dados['p_vp'] <= criterios['pvp_max'] and dados['volume'] >= criterios['volume_min']): # Calcular score de atratividade score = calcular_score_fii(dados) dados['score'] = score fiis_aprovados.append(dados) return sorted(fiis_aprovados, key=lambda x: x['score'], reverse=True) def calcular_score_fii(dados): """Calcula score de atratividade do FII (0-100)""" score = 0 # Dividend Yield (peso 40%) dy = dados['dividend_yield'] if dy >= 10: score += 40 elif dy >= 8: score += 30 elif dy >= 6: score += 20 elif dy >= 4: score += 10 # P/VP (peso 30%) pvp = dados['p_vp'] if pvp <= 0.8: score += 30 elif pvp <= 1.0: score += 25 elif pvp <= 1.2: score += 15 elif pvp <= 1.5: score += 5 # Liquidez (peso 20%) volume = dados['volume'] if volume >= 1000000: score += 20 elif volume >= 500000: score += 15 elif volume >= 100000: score += 10 elif volume >= 50000: score += 5 # Setor (peso 10%) setor_score = { 'Logístico': 10, 'Corporativo': 8, 'Shopping': 6, 'Híbrido': 7, 'Papel': 5, 'Residencial': 4 } score += setor_score.get(dados['setor'], 0) return score # Critérios de screening criterios_fii = { 'dy_min': 6.0, # DY mínimo 6% 'dy_max': 20.0, # DY máximo 20% (evitar armadilhas) 'pvp_min': 0.5, # P/VP mínimo 'pvp_max': 1.5, # P/VP máximo 'volume_min': 50000 # Volume mínimo diário } # Lista de FIIs para análise fiis_universo = [ # Logísticos 'HGLG11', 'XPLG11', 'BTLG11', 'LVBI11', 'CXTL11', # Corporativos 'HGCR11', 'VILG11', 'ALZR11', 'RNGO11', 'RBRR11', # Shoppings 'HGRE11', 'MALL11', 'GGRC11', 'JSRE11', 'SHOP11', # Híbridos 'XPCI11', 'BCFF11', 'VISC11', 'MXRF11', 'KNRI11', # Papel 'KNCR11', 'RNGO11', 'RBRP11', 'RBRF11', 'XPPR11' ] fiis_selecionados = screening_fiis(fiis_universo, criterios_fii, 'SEU_TOKEN') print("🏢 TOP 15 FIIs SELECIONADOS") print("=" * 70) for i, fii in enumerate(fiis_selecionados[:15], 1): print(f"{i:2d}. {fii['ticker']} - {fii['setor']}") print(f" DY: {fii['dividend_yield']:.2f}% | P/VP: {fii['p_vp']:.2f} | Score: {fii['score']:.1f}") print(f" Volume: {fii['volume']:,.0f} | Preço: R$ {fii['preco']:.2f}") print() ``` ## Estratégias de Investimento em FIIs ### 1. Estratégia de Renda (Income) **Objetivo:** Maximizar renda mensal **Critérios:** * DY > 8% * Histórico consistente de dividendos * FIIs de tijolo com contratos longos * Setores defensivos (logístico, corporativo) ### 2. Estratégia de Crescimento (Growth) **Objetivo:** Valorização das cotas **Critérios:** * P/VP \< 1,0 * Gestoras com histórico de crescimento * Setores em expansão * FIIs com potencial de desenvolvimento ### 3. Estratégia Mista (Barbell) **Objetivos:** Equilibrar renda e crescimento **Composição:** * 60% FIIs de renda (DY alto) * 40% FIIs de crescimento (P/VP baixo) ## Diversificação em FIIs ### Por Setor ```python diversificacao_setorial = { 'logistico': { 'alvo': 30, 'caracteristicas': 'E-commerce, contratos longos', 'fiis': ['HGLG11', 'XPLG11', 'BTLG11'] }, 'corporativo': { 'alvo': 25, 'caracteristicas': 'Escritórios AAA, lajes', 'fiis': ['HGCR11', 'VILG11', 'ALZR11'] }, 'shopping': { 'alvo': 20, 'caracteristicas': 'Centros comerciais', 'fiis': ['HGRE11', 'MALL11', 'GGRC11'] }, 'hibridos': { 'alvo': 15, 'caracteristicas': 'Diversificação interna', 'fiis': ['XPCI11', 'BCFF11', 'VISC11'] }, 'papel': { 'alvo': 10, 'caracteristicas': 'CRI, LCI, títulos', 'fiis': ['KNCR11', 'MXRF11', 'RNGO11'] } } ``` ### Por Gestora **Vantagens da diversificação:** * Reduz risco de gestão concentrada * Diferentes estratégias e focos * Acesso a expertise específica **Principais gestoras:** * Hedge Investments * XP Asset Management * BTG Pactual * Vinci Partners * Rio Bravo ## Análise de Vacância e Ocupação ### Monitoramento via Relatórios ```python def analisar_vacancia_fii(ticker, token): """Análise de vacância baseada em dados públicos""" # Esta função seria expandida com dados específicos de relatórios dados_exemplo = { 'HGLG11': { 'vacancy_atual': 2.5, 'vacancy_historica': [1.8, 2.1, 2.5, 2.3, 2.0], 'area_total': 850000, # m² 'area_locada': 828750, 'contratos_vencimento': { '2024': 15, '2025': 25, '2026': 30, '2027+': 30 } } } return dados_exemplo.get(ticker, {}) def avaliar_qualidade_inquilinos(ticker): """Avalia qualidade dos inquilinos""" # Baseado em informações públicas dos relatórios qualidade_exemplo = { 'HGLG11': { 'inquilinos_aaa': 70, # % receita de inquilinos AAA 'top10_concentracao': 45, # % receita dos 10 maiores 'principais': ['Magazine Luiza', 'Amazon', 'Americanas'], 'score_credito': 'Alto' } } return qualidade_exemplo.get(ticker, {}) ``` ## Acompanhamento de Dividendos ### Calendário de Dividendos ```python def rastrear_dividendos_fiis(lista_fiis, token): """Rastreia histórico e projeções de dividendos""" resultados = [] for ticker in lista_fiis: url = f"https://brapi.dev/api/quote/{ticker}?modules=dividendsData&token={token}" try: response = requests.get(url) data = response.json() if 'dividendsData' in data['results'][0]: dividendos = data['results'][0]['dividendsData']['dividends'] # Calcular métricas de dividendos ultimos_12m = [d for d in dividendos if datetime.strptime(d['date'], '%Y-%m-%d') > datetime.now() - timedelta(days=365)] if ultimos_12m: dividendo_anual = sum(d['dividend'] for d in ultimos_12m) media_mensal = dividendo_anual / 12 # Calcular consistência valores_mensais = [d['dividend'] for d in ultimos_12m] consistencia = 1 - (max(valores_mensais) - min(valores_mensais)) / max(valores_mensais) resultados.append({ 'ticker': ticker, 'dividendo_anual': dividendo_anual, 'media_mensal': media_mensal, 'consistencia': consistencia * 100, 'ultimo_pagamento': ultimos_12m[0]['date'], 'valor_ultimo': ultimos_12m[0]['dividend'] }) except Exception as e: print(f"Erro ao processar dividendos de {ticker}: {e}") return sorted(resultados, key=lambda x: x['dividendo_anual'], reverse=True) # Análise de dividendos dividendos_fiis = rastrear_dividendos_fiis(['HGLG11', 'XPCI11', 'MALL11'], 'SEU_TOKEN') for fii in dividendos_fiis: print(f"💰 {fii['ticker']}") print(f" Dividendo anual: R$ {fii['dividendo_anual']:.4f}") print(f" Média mensal: R$ {fii['media_mensal']:.4f}") print(f" Consistência: {fii['consistencia']:.1f}%") ``` ## Construindo uma Carteira de FIIs ### Modelo de Carteira Diversificada ```python def construir_carteira_fiis(valor_total, fiis_selecionados, diversificacao): """Constrói carteira de FIIs diversificada""" carteira = { 'valor_total': valor_total, 'posicoes': [], 'diversificacao_real': {}, 'dy_medio_carteira': 0 } # Alocar por setor respeitando diversificação for setor, config in diversificacao.items(): valor_setor = valor_total * (config['alvo'] / 100) fiis_setor = [f for f in fiis_selecionados if f['setor'].lower() == setor] if fiis_setor: # Selecionar até 2 FIIs por setor fiis_escolhidos = fiis_setor[:2] valor_por_fii = valor_setor / len(fiis_escolhidos) for fii in fiis_escolhidos: cotas = int(valor_por_fii / fii['preco']) if cotas > 0: valor_investido = cotas * fii['preco'] carteira['posicoes'].append({ 'ticker': fii['ticker'], 'nome': fii['nome'], 'setor': fii['setor'], 'cotas': cotas, 'preco': fii['preco'], 'valor_investido': valor_investido, 'dy_esperado': fii['dividend_yield'], 'renda_mensal_esperada': (valor_investido * fii['dividend_yield'] / 100) / 12 }) # Calcular métricas da carteira valor_real_investido = sum(p['valor_investido'] for p in carteira['posicoes']) # DY médio ponderado carteira['dy_medio_carteira'] = sum( p['dy_esperado'] * p['valor_investido'] for p in carteira['posicoes'] ) / valor_real_investido # Renda mensal total esperada carteira['renda_mensal_total'] = sum(p['renda_mensal_esperada'] for p in carteira['posicoes']) # Diversificação real for posicao in carteira['posicoes']: setor = posicao['setor'] if setor not in carteira['diversificacao_real']: carteira['diversificacao_real'][setor] = 0 carteira['diversificacao_real'][setor] += posicao['valor_investido'] # Converter para percentual for setor in carteira['diversificacao_real']: carteira['diversificacao_real'][setor] = ( carteira['diversificacao_real'][setor] / valor_real_investido ) * 100 return carteira # Construir carteira exemplo carteira_fiis = construir_carteira_fiis(50000, fiis_selecionados, diversificacao_setorial) print("🏢 CARTEIRA DE FIIs CONSTRUÍDA") print("=" * 60) print(f"Valor Total: R$ {carteira_fiis['valor_total']:,.2f}") print(f"DY Médio da Carteira: {carteira_fiis['dy_medio_carteira']:.2f}%") print(f"Renda Mensal Esperada: R$ {carteira_fiis['renda_mensal_total']:,.2f}") print("\n📋 POSIÇÕES:") for pos in carteira_fiis['posicoes']: participacao = (pos['valor_investido'] / carteira_fiis['valor_total']) * 100 print(f"{pos['ticker']} - {pos['setor']}") print(f" Cotas: {pos['cotas']} | Preço: R$ {pos['preco']:.2f}") print(f" Investido: R$ {pos['valor_investido']:,.2f} ({participacao:.1f}%)") print(f" DY: {pos['dy_esperado']:.2f}% | Renda mensal: R$ {pos['renda_mensal_esperada']:.2f}") print() print("🎯 DIVERSIFICAÇÃO REAL:") for setor, percentual in carteira_fiis['diversificacao_real'].items(): print(f" {setor}: {percentual:.1f}%") ``` ## Acompanhamento e Rebalanceamento ### Dashboard de Monitoramento ```python class MonitorFIIs: def __init__(self, carteira, token): self.carteira = carteira self.token = token def atualizar_carteira(self): """Atualiza preços e calculamétricas atuais""" tickers = [pos['ticker'] for pos in self.carteira['posicoes']] tickers_str = ','.join(tickers) url = f"https://brapi.dev/api/quote/{tickers_str}?token={self.token}" response = requests.get(url) data = response.json() # Criar dicionário de preços atuais precos_atuais = {r['symbol']: r['regularMarketPrice'] for r in data['results']} valor_atual_total = 0 for posicao in self.carteira['posicoes']: if posicao['ticker'] in precos_atuais: posicao['preco_atual'] = precos_atuais[posicao['ticker']] posicao['valor_atual'] = posicao['cotas'] * posicao['preco_atual'] posicao['rentabilidade'] = ((posicao['preco_atual'] - posicao['preco']) / posicao['preco']) * 100 valor_atual_total += posicao['valor_atual'] return valor_atual_total def gerar_relatorio_mensal(self): """Gera relatório mensal de performance""" valor_atual = self.atualizar_carteira() valor_investido = sum(p['valor_investido'] for p in self.carteira['posicoes']) relatorio = { 'data': datetime.now().strftime('%B %Y'), 'valor_investido': valor_investido, 'valor_atual': valor_atual, 'rentabilidade': ((valor_atual - valor_investido) / valor_investido) * 100, 'renda_recebida_mes': self.calcular_renda_mes_atual(), 'yield_on_cost': (self.carteira['renda_mensal_total'] * 12 / valor_investido) * 100 } return relatorio def calcular_renda_mes_atual(self): """Calcula renda recebida no mês atual""" # Simplificado - na prática consultaria dados reais de dividendos return self.carteira['renda_mensal_total'] # Exemplo de monitoramento monitor = MonitorFIIs(carteira_fiis, 'SEU_TOKEN') relatorio_mensal = monitor.gerar_relatorio_mensal() print("📊 RELATÓRIO MENSAL - FIIs") print("=" * 40) print(f"Mês: {relatorio_mensal['data']}") print(f"Valor Investido: R$ {relatorio_mensal['valor_investido']:,.2f}") print(f"Valor Atual: R$ {relatorio_mensal['valor_atual']:,.2f}") print(f"Rentabilidade: {relatorio_mensal['rentabilidade']:+.2f}%") print(f"Renda do Mês: R$ {relatorio_mensal['renda_recebida_mes']:,.2f}") print(f"Yield on Cost: {relatorio_mensal['yield_on_cost']:.2f}%") ``` ## Riscos e Cuidados nos FIIs ### Principais Riscos #### 1. **Risco de Vacância** * Inquilinos podem sair * Dificuldade de relocação * Redução da renda #### 2. **Risco de Gestão** * Qualidade da administração * Decisões estratégicas * Conflitos de interesse #### 3. **Risco Setorial** * Mudanças no mercado imobiliário * Obsolescência do segmento * Regulamentações específicas #### 4. **Risco de Liquidez** * FIIs pequenos podem ter baixa liquidez * Spread elevado * Dificuldade para vender ### Como Mitigar Riscos ```python def avaliar_riscos_fii(ticker, dados_fii): """Avalia riscos específicos de um FII""" riscos = { 'liquidez': 'Baixo' if dados_fii['volume'] > 500000 else 'Alto', 'concentracao': verificar_concentracao_geografica(ticker), 'gestora': avaliar_historico_gestora(ticker), 'setor': avaliar_risco_setorial(dados_fii['setor']) } return riscos def verificar_concentracao_geografica(ticker): """Verifica concentração geográfica dos ativos""" # Análise baseada em relatórios públicos return "Média" # Simplificado def avaliar_historico_gestora(ticker): """Avalia histórico da gestora""" # Análise baseada em performance histórica return "Boa" # Simplificado def avaliar_risco_setorial(setor): """Avalia risco do setor específico""" riscos_setor = { 'Logístico': 'Baixo', 'Corporativo': 'Médio', 'Shopping': 'Alto', 'Papel': 'Médio', 'Híbrido': 'Baixo' } return riscos_setor.get(setor, 'Médio') ``` ## Tributação dos FIIs ### Pessoa Física #### Rendimentos (Dividendos) * **Isenção total** de imposto de renda * Cota deve ser negociada em bolsa * FII deve ter no mínimo 50 cotistas #### Ganho de Capital * **20% sobre o ganho** na venda das cotas * Isenção para vendas até R$ 20.000/mês * Apuração mensal obrigatória ### Exemplo de Cálculo de IR ```python def calcular_ir_fiis(operacoes_mes): """Calcula IR sobre ganho de capital em FIIs""" total_vendas = sum(op['valor_venda'] for op in operacoes_mes) if total_vendas <= 20000: return 0 # Isento total_ganho = sum(max(0, op['valor_venda'] - op['valor_compra']) for op in operacoes_mes) ir_devido = total_ganho * 0.20 return { 'total_vendas': total_vendas, 'total_ganho': total_ganho, 'ir_devido': ir_devido, 'isento': total_vendas <= 20000 } # Exemplo de operações operacoes_exemplo = [ {'ticker': 'HGLG11', 'valor_compra': 10000, 'valor_venda': 12000}, {'ticker': 'XPCI11', 'valor_compra': 8000, 'valor_venda': 8500} ] ir_calculo = calcular_ir_fiis(operacoes_exemplo) print(f"IR devido: R$ {ir_calculo['ir_devido']:.2f}") ``` ## Conclusão Os Fundos de Investimento Imobiliário representam uma excelente oportunidade para diversificar investimentos e gerar renda passiva mensal. Com a análise adequada usando dados da brapi.dev, é possível construir uma carteira sólida e bem diversificada. ### Pontos-Chave para Sucesso: 1. **Diversificação Setorial**: Não concentre em um único segmento 2. **Análise Fundamentalista**: Foque em DY, P/VP e qualidade dos ativos 3. **Liquidez**: Prefira FIIs com volume adequado 4. **Gestão**: Escolha gestoras com histórico comprovado 5. **Acompanhamento**: Monitore performance mensalmente ### Próximos Passos: * **[Explore nossa API](/docs)** para dados completos de FIIs * **[Acesse nossa plataforma](/quotes)** para análises em tempo real * **[Aprenda outros indicadores fundamentalistas](/blog/guia-completo-indicadores-fundamentalistas-bovespa)** para análise completa * **[Construa carteiras diversificadas](/blog/como-construir-carteira-investimentos-diversificada-brapi)** incluindo FIIs * **Implemente os códigos** deste guia em suas análises ### Recursos Adicionais: * **[Análise P/VP (Preço/Valor Patrimonial)](/blog/como-usar-indicador-pvp-valor-patrimonial-analise-acoes)** - Complemento ao P/L * **[Guia completo de indicadores fundamentalistas](/blog/guia-completo-indicadores-fundamentalistas-bovespa)** - Todos os indicadores em um só lugar * **[Dados históricos](/docs)** de dividendos e preços * **[Relatórios de mercado](/blog)** sobre o setor imobiliário * **[Tutoriais práticos](/docs/examples)** de implementação **Lembre-se**: FIIs são investimentos de longo prazo. Foque na qualidade dos ativos e na sustentabilidade dos dividendos, não apenas no yield elevado! # Indicadores Fundamentalistas 2025: Guia Definitivo para B3 URL: /blog/guia-completo-indicadores-fundamentalistas-bovespa.mdx Domine TODOS os indicadores fundamentalistas! P/L, ROE, ROIC, EBITDA, margens e múltiplos. Framework completo para análise e investimento na B3 ✓ *** searchable: true title: 'Indicadores Fundamentalistas 2025: Guia Definitivo para B3' description: 'Domine TODOS os indicadores fundamentalistas! P/L, ROE, ROIC, EBITDA, margens e múltiplos. Framework completo para análise e investimento na B3 ✓' date: '2025-08-22' keywords: 'indicadores fundamentalistas, análise fundamentalista, P/L, ROE, ROIC, margem líquida, P/VP, EV/EBITDA, B3, valuation, múltiplos, investimento ações, brapi' author: 'Equipe brapi.dev' category: 'Análise Fundamentalista' subcategory: 'Framework Completo' readingTime: '28 min' tags: \['Indicadores Fundamentalistas', 'Análise Fundamentalista', 'B3', 'Valuation', 'Investimentos', 'Múltiplos', 'Framework'] relatedPosts: \['analise-fundamentalista-acoes-indicadores-essenciais-investir-b3', 'entendendo-indicador-preco-lucro-pl-analise-fundamentalista', 'roe-return-equity-como-avaliar-eficiencia-gestao-empresarial'] featured: true expertise: 'Framework completo de análise fundamentalista com 8+ anos de experiência' lastReviewed: '2025-08-22' -------------------------- import { Authors, Author } from '~/components/Authors'; # Guia Completo dos Indicadores Fundamentalistas para Investir na Bovespa (B3) > Este é o guia definitivo dos indicadores fundamentalistas para análise de ações brasileiras. Aprenda a interpretar e usar P/L, ROE, ROIC, margens, múltiplos e indicadores de endividamento para construir uma estratégia sólida de investimentos na B3. *** ## Introdução aos Indicadores Fundamentalistas Os **indicadores fundamentalistas** são métricas que permitem avaliar a saúde financeira, rentabilidade, eficiência e valor de uma empresa. Eles são essenciais para tomar decisões de investimento baseadas em dados concretos, não em especulação. ### Por que Usar Indicadores Fundamentalistas? 1. **Identificar Valor Real**: Distinguir preço de valor 2. **Comparar Empresas**: Análise objetiva entre concorrentes 3. **Reduzir Riscos**: Evitar empresas com fundamentos fracos 4. **Construir Estratégia**: Base para decisões de longo prazo ## Framework Completo de Análise ### Categorias de Indicadores ```python import requests import json from datetime import datetime, timedelta class AnalisadorFundamentalista: def __init__(self, token=''): self.token = token self.base_url = "https://brapi.dev/api" def buscar_dados_completos(self, ticker): """Busca todos os dados necessários para análise fundamentalista""" modules = [ 'defaultKeyStatistics', 'financialData', 'summaryDetail', 'balanceSheetHistory', 'incomeStatementHistory', 'cashflowStatementHistory' ] url = f"{self.base_url}/quote/{ticker}?modules={','.join(modules)}&token={self.token}" try: response = requests.get(url) return response.json()['results'][0] except Exception as e: print(f"Erro ao buscar dados de {ticker}: {e}") return None def calcular_todos_indicadores(self, ticker): """Calcula todos os indicadores fundamentalistas""" dados = self.buscar_dados_completos(ticker) if not dados: return None indicadores = { 'ticker': ticker, 'nome': dados.get('longName', ''), 'setor': dados.get('sector', ''), 'subsector': dados.get('industry', ''), # 1. MÚLTIPLOS DE AVALIAÇÃO 'multiplos': self.calcular_multiplos_avaliacao(dados), # 2. INDICADORES DE RENTABILIDADE 'rentabilidade': self.calcular_rentabilidade(dados), # 3. INDICADORES DE EFICIÊNCIA 'eficiencia': self.calcular_eficiencia(dados), # 4. INDICADORES DE LIQUIDEZ 'liquidez': self.calcular_liquidez(dados), # 5. INDICADORES DE ENDIVIDAMENTO 'endividamento': self.calcular_endividamento(dados), # 6. INDICADORES DE CRESCIMENTO 'crescimento': self.calcular_crescimento(dados), # 7. INDICADORES DE DIVIDEND YIELD 'dividendos': self.calcular_indicadores_dividendos(dados), # 8. SCORE GERAL 'score_geral': 0 } # Calcular score geral indicadores['score_geral'] = self.calcular_score_geral(indicadores) return indicadores def calcular_multiplos_avaliacao(self, dados): """Múltiplos de avaliação (P/L, P/VP, PSR, EV/EBITDA)""" return { # Preço/Lucro 'pl': dados.get('trailingPE', 0), 'pl_forward': dados.get('forwardPE', 0), # Preço/Valor Patrimonial 'pvp': dados.get('priceToBook', 0), # Preço/Vendas 'psr': dados.get('priceToSalesTrailing12Months', 0), # Enterprise Value/EBITDA 'ev_ebitda': dados.get('enterpriseToEbitda', 0), # Enterprise Value/Revenue 'ev_revenue': dados.get('enterpriseToRevenue', 0), # PEG Ratio 'peg': dados.get('pegRatio', 0) } def calcular_rentabilidade(self, dados): """Indicadores de rentabilidade""" return { # Return on Equity 'roe': dados.get('returnOnEquity', 0), # Return on Assets 'roa': dados.get('returnOnAssets', 0), # Return on Investment Capital 'roic': self.calcular_roic(dados), # Margens 'margem_bruta': dados.get('grossMargins', 0) * 100, 'margem_operacional': dados.get('operatingMargins', 0) * 100, 'margem_liquida': dados.get('profitMargins', 0) * 100, # EBITDA Margin 'margem_ebitda': dados.get('ebitdaMargins', 0) * 100 } def calcular_eficiencia(self, dados): """Indicadores de eficiência operacional""" # Buscar dados do balanço e DRE balanco = dados.get('balanceSheetHistory', {}).get('balanceSheetHistory', []) dre = dados.get('incomeStatementHistory', {}).get('incomeStatementHistory', []) if not balanco or not dre: return {} balanco_atual = balanco[0] dre_atual = dre[0] # Receita e ativos receita = dre_atual.get('totalRevenue', 0) total_assets = balanco_atual.get('totalAssets', 0) inventory = balanco_atual.get('inventory', 0) accounts_receivable = balanco_atual.get('netReceivables', 0) return { # Giro do Ativo 'giro_ativo': (receita / total_assets) if total_assets > 0 else 0, # Giro do Estoque (dias) 'giro_estoque_dias': (inventory * 365 / receita) if receita > 0 and inventory > 0 else 0, # Prazo Médio de Recebimento (dias) 'pmr_dias': (accounts_receivable * 365 / receita) if receita > 0 and accounts_receivable > 0 else 0, # Asset Turnover 'asset_turnover': (receita / total_assets) if total_assets > 0 else 0 } def calcular_liquidez(self, dados): """Indicadores de liquidez""" return { # Liquidez Corrente 'liquidez_corrente': dados.get('currentRatio', 0), # Liquidez Seca 'liquidez_seca': dados.get('quickRatio', 0), # Liquidez Imediata 'liquidez_imediata': self.calcular_liquidez_imediata(dados) } def calcular_endividamento(self, dados): """Indicadores de endividamento""" return { # Debt to Equity 'debt_to_equity': dados.get('debtToEquity', 0), # Debt to Assets 'debt_to_assets': self.calcular_debt_to_assets(dados), # Interest Coverage 'interest_coverage': dados.get('interestCoverage', 0), # Cobertura de Juros por EBITDA 'ebitda_interest_coverage': self.calcular_ebitda_interest_coverage(dados) } def calcular_crescimento(self, dados): """Indicadores de crescimento""" # Buscar histórico para calcular crescimento dre_historico = dados.get('incomeStatementHistory', {}).get('incomeStatementHistory', []) if len(dre_historico) < 2: return {} dre_atual = dre_historico[0] dre_anterior = dre_historico[1] receita_atual = dre_atual.get('totalRevenue', 0) receita_anterior = dre_anterior.get('totalRevenue', 0) lucro_atual = dre_atual.get('netIncome', 0) lucro_anterior = dre_anterior.get('netIncome', 0) return { # Crescimento de Receita 'crescimento_receita': self.calcular_taxa_crescimento(receita_anterior, receita_atual), # Crescimento de Lucro 'crescimento_lucro': self.calcular_taxa_crescimento(lucro_anterior, lucro_atual), # Earnings Growth Rate 'earnings_growth': dados.get('earningsGrowth', 0), # Revenue Growth Rate 'revenue_growth': dados.get('revenueGrowth', 0) } def calcular_indicadores_dividendos(self, dados): """Indicadores relacionados a dividendos""" return { # Dividend Yield 'dividend_yield': dados.get('dividendYield', 0) * 100, # Payout Ratio 'payout_ratio': dados.get('payoutRatio', 0) * 100, # Dividendos por Ação 'dividends_per_share': dados.get('dividendsPerShare', 0), # Taxa de Crescimento de Dividendos 'dividend_growth': self.calcular_crescimento_dividendos(dados) } # Métodos auxiliares def calcular_roic(self, dados): """Calcula Return on Invested Capital""" try: dre = dados.get('incomeStatementHistory', {}).get('incomeStatementHistory', []) balanco = dados.get('balanceSheetHistory', {}).get('balanceSheetHistory', []) if not dre or not balanco: return 0 # NOPAT (Net Operating Profit After Tax) ebit = dre[0].get('operatingIncome', 0) tax_rate = 0.25 # Taxa aproximada de IR no Brasil nopat = ebit * (1 - tax_rate) # Invested Capital total_equity = balanco[0].get('totalStockholdersEquity', 0) total_debt = balanco[0].get('totalDebt', 0) invested_capital = total_equity + total_debt return (nopat / invested_capital * 100) if invested_capital > 0 else 0 except: return 0 def calcular_taxa_crescimento(self, valor_anterior, valor_atual): """Calcula taxa de crescimento entre dois períodos""" if valor_anterior <= 0: return 0 return ((valor_atual - valor_anterior) / valor_anterior) * 100 def calcular_score_geral(self, indicadores): """Calcula score geral da empresa (0-100)""" score = 0 # Score múltiplos (peso 25%) multiplos = indicadores['multiplos'] if 8 <= multiplos.get('pl', 0) <= 15: score += 10 elif multiplos.get('pl', 0) < 8: score += 15 if multiplos.get('pvp', 0) < 1.5: score += 10 # Score rentabilidade (peso 30%) rentabilidade = indicadores['rentabilidade'] if rentabilidade.get('roe', 0) >= 15: score += 15 elif rentabilidade.get('roe', 0) >= 10: score += 10 if rentabilidade.get('margem_liquida', 0) >= 10: score += 15 elif rentabilidade.get('margem_liquida', 0) >= 5: score += 10 # Score liquidez (peso 15%) liquidez = indicadores['liquidez'] if liquidez.get('liquidez_corrente', 0) >= 1.5: score += 15 elif liquidez.get('liquidez_corrente', 0) >= 1.0: score += 10 # Score endividamento (peso 15%) endiv = indicadores['endividamento'] if endiv.get('debt_to_equity', 0) < 0.5: score += 15 elif endiv.get('debt_to_equity', 0) < 1.0: score += 10 # Score crescimento (peso 15%) crescimento = indicadores['crescimento'] if crescimento.get('crescimento_receita', 0) >= 10: score += 15 elif crescimento.get('crescimento_receita', 0) >= 5: score += 10 elif crescimento.get('crescimento_receita', 0) >= 0: score += 5 return min(score, 100) # Exemplo de uso analisador = AnalisadorFundamentalista('SEU_TOKEN') analise_completa = analisador.calcular_todos_indicadores('ITUB4') if analise_completa: print("📊 ANÁLISE FUNDAMENTALISTA COMPLETA - ITUB4") print("=" * 70) print(f"Empresa: {analise_completa['nome']}") print(f"Setor: {analise_completa['setor']}") print(f"Score Geral: {analise_completa['score_geral']:.0f}/100") print(f"\n📈 MÚLTIPLOS DE AVALIAÇÃO:") multiplos = analise_completa['multiplos'] print(f"P/L: {multiplos['pl']:.1f}") print(f"P/VP: {multiplos['pvp']:.2f}") print(f"PSR: {multiplos['psr']:.2f}") print(f"EV/EBITDA: {multiplos['ev_ebitda']:.1f}") print(f"\n💰 RENTABILIDADE:") rent = analise_completa['rentabilidade'] print(f"ROE: {rent['roe']:.1f}%") print(f"ROA: {rent['roa']:.1f}%") print(f"ROIC: {rent['roic']:.1f}%") print(f"Margem Líquida: {rent['margem_liquida']:.1f}%") print(f"\n💧 LIQUIDEZ:") liq = analise_completa['liquidez'] print(f"Liquidez Corrente: {liq['liquidez_corrente']:.2f}") print(f"Liquidez Seca: {liq['liquidez_seca']:.2f}") print(f"\n💳 ENDIVIDAMENTO:") end = analise_completa['endividamento'] print(f"Debt/Equity: {end['debt_to_equity']:.2f}") print(f"\n📈 CRESCIMENTO:") cresc = analise_completa['crescimento'] print(f"Crescimento Receita: {cresc.get('crescimento_receita', 0):+.1f}%") print(f"Crescimento Lucro: {cresc.get('crescimento_lucro', 0):+.1f}%") ``` ## 1. Múltiplos de Avaliação ### P/L (Preço sobre Lucro) **Definição**: Relaciona o preço da ação com o lucro por ação **Fórmula**: `P/L = Preço da Ação ÷ Lucro por Ação` #### Interpretação: * **P/L \< 10**: Possivelmente subvalorizada * **10 \< P/L \< 20**: Faixa considerada normal * **P/L > 20**: Pode estar cara ou com grande potencial ### P/VP (Preço sobre Valor Patrimonial) **Definição**: Compara valor de mercado com patrimônio líquido **Fórmula**: `P/VP = Preço da Ação ÷ Valor Patrimonial por Ação` #### Interpretação: * **P/VP \< 1**: Negociada abaixo do valor contábil * **P/VP = 1**: Preço igual ao valor patrimonial * **P/VP > 1**: Prêmio sobre valor contábil ### EV/EBITDA (Enterprise Value sobre EBITDA) **Definição**: Valor da empresa sobre lucro operacional **Fórmula**: `EV/EBITDA = (Market Cap + Dívida Líquida) ÷ EBITDA` #### Interpretação: * **EV/EBITDA \< 8**: Potencialmente barata * **8 \< EV/EBITDA \< 15**: Faixa normal * **EV/EBITDA > 15**: Possivelmente cara ## 2. Indicadores de Rentabilidade ### ROE (Return on Equity) **Definição**: Retorno sobre patrimônio líquido **Fórmula**: `ROE = Lucro Líquido ÷ Patrimônio Líquido` #### Interpretação: * **ROE > 15%**: Excelente * **10% \< ROE \< 15%**: Boa * **ROE \< 10%**: Abaixo da média ### ROIC (Return on Invested Capital) **Definição**: Retorno sobre capital investido **Fórmula**: `ROIC = NOPAT ÷ Capital Investido` #### Interpretação: * **ROIC > 12%**: Empresa cria valor * **ROIC = Custo do Capital**: Neutra * **ROIC \< Custo do Capital**: Destrói valor ### Margens de Lucro ```python def analisar_margens_empresa(ticker, token=''): """Análise detalhada das margens de lucro""" url = f"https://brapi.dev/api/quote/{ticker}?modules=incomeStatementHistory&token={token}" response = requests.get(url) data = response.json() dre_list = data['results'][0]['incomeStatementHistory']['incomeStatementHistory'] analise_margens = [] for dre in dre_list[:3]: # Últimos 3 anos receita = dre.get('totalRevenue', 0) lucro_bruto = dre.get('grossProfit', 0) lucro_operacional = dre.get('operatingIncome', 0) lucro_liquido = dre.get('netIncome', 0) ebitda = dre.get('ebitda', 0) if receita > 0: margens = { 'ano': datetime.fromtimestamp(dre['endDate']).year, 'margem_bruta': (lucro_bruto / receita) * 100, 'margem_operacional': (lucro_operacional / receita) * 100, 'margem_liquida': (lucro_liquido / receita) * 100, 'margem_ebitda': (ebitda / receita) * 100 if ebitda > 0 else 0 } analise_margens.append(margens) return analise_margens # Análise de margens margens_itub4 = analisar_margens_empresa('ITUB4') print("📊 ANÁLISE DE MARGENS - ITUB4") print("=" * 50) for margem in margens_itub4: print(f"\n📅 {margem['ano']}:") print(f" Margem Bruta: {margem['margem_bruta']:.1f}%") print(f" Margem Operacional: {margem['margem_operacional']:.1f}%") print(f" Margem Líquida: {margem['margem_liquida']:.1f}%") print(f" Margem EBITDA: {margem['margem_ebitda']:.1f}%") ``` ## 3. Indicadores de Eficiência ### Giro dos Ativos **Definição**: Eficiência no uso dos ativos para gerar receita **Fórmula**: `Giro = Receita Líquida ÷ Ativo Total` ### ROA (Return on Assets) **Definição**: Retorno sobre ativos totais **Fórmula**: `ROA = Lucro Líquido ÷ Ativo Total` ## 4. Indicadores de Liquidez ### Liquidez Corrente **Definição**: Capacidade de pagamento no curto prazo **Fórmula**: `LC = Ativo Circulante ÷ Passivo Circulante` #### Interpretação: * **LC > 2**: Excelente liquidez * **1,5 \< LC \< 2**: Boa liquidez * **LC \< 1**: Problemas de liquidez ### Liquidez Seca **Definição**: Liquidez excluindo estoques **Fórmula**: `LS = (Ativo Circulante - Estoques) ÷ Passivo Circulante` ## 5. Indicadores de Endividamento ### Debt-to-Equity **Definição**: Proporção entre dívida e patrimônio **Fórmula**: `D/E = Dívida Total ÷ Patrimônio Líquido` #### Interpretação: * **D/E \< 0,5**: Baixo endividamento * **0,5 \< D/E \< 1,0**: Endividamento moderado * **D/E > 1,0**: Alto endividamento ## Screening Fundamentalista Avançado ### Sistema de Filtros Múltiplos ```python def screening_fundamentalista_completo(universo_acoes, criterios, token=''): """Sistema completo de screening fundamentalista""" analisador = AnalisadorFundamentalista(token) resultados = [] print(f"🔍 Iniciando screening de {len(universo_acoes)} ações...") print("=" * 60) for i, ticker in enumerate(universo_acoes, 1): print(f"[{i:2d}/{len(universo_acoes)}] Analisando {ticker}...", end=' ') try: analise = analisador.calcular_todos_indicadores(ticker) if not analise: print("❌ Dados insuficientes") continue # Aplicar todos os filtros if filtrar_por_criterios(analise, criterios): resultados.append(analise) print("✅ Aprovada") else: print("❌ Rejeitada") except Exception as e: print(f"❌ Erro: {e}") continue # Ordenar por score geral resultados_ordenados = sorted(resultados, key=lambda x: x['score_geral'], reverse=True) return resultados_ordenados def filtrar_por_criterios(analise, criterios): """Aplica filtros de screening""" multiplos = analise['multiplos'] rentabilidade = analise['rentabilidade'] liquidez = analise['liquidez'] endividamento = analise['endividamento'] crescimento = analise['crescimento'] # Filtros de múltiplos if (multiplos.get('pl', 999) > criterios['pl_max'] or multiplos.get('pvp', 999) > criterios['pvp_max'] or multiplos.get('ev_ebitda', 999) > criterios['ev_ebitda_max']): return False # Filtros de rentabilidade if (rentabilidade.get('roe', 0) < criterios['roe_min'] or rentabilidade.get('margem_liquida', 0) < criterios['margem_min']): return False # Filtros de liquidez if liquidez.get('liquidez_corrente', 0) < criterios['liquidez_min']: return False # Filtros de endividamento if endividamento.get('debt_to_equity', 999) > criterios['debt_equity_max']: return False # Filtros de crescimento if crescimento.get('crescimento_receita', -999) < criterios['crescimento_min']: return False return True # Critérios de screening conservador criterios_conservador = { # Múltiplos 'pl_max': 15, 'pvp_max': 2.0, 'ev_ebitda_max': 12, # Rentabilidade 'roe_min': 12, 'margem_min': 8, # Liquidez 'liquidez_min': 1.2, # Endividamento 'debt_equity_max': 0.8, # Crescimento 'crescimento_min': 0 # Pelo menos estável } # Universo para screening universo_blue_chips = [ 'ITUB4', 'BBDC4', 'PETR4', 'VALE3', 'ABEV3', 'BBAS3', 'WEGE3', 'RENT3', 'MGLU3', 'LREN3', 'RAIL3', 'VIVT3', 'KLBN11', 'SBSP3', 'SUZB3', 'CCRO3', 'EGIE3', 'TAEE11', 'CMIG4', 'ENBR3', 'EQTL3', 'CSAN3', 'USIM5', 'GOAU4' ] # Executar screening empresas_aprovadas = screening_fundamentalista_completo(universo_blue_chips, criterios_conservador) print(f"\n🎯 RESULTADO DO SCREENING") print("=" * 60) print(f"Empresas analisadas: {len(universo_blue_chips)}") print(f"Empresas aprovadas: {len(empresas_aprovadas)}") print(f"Taxa de aprovação: {len(empresas_aprovadas)/len(universo_blue_chips)*100:.1f}%") print(f"\n🏆 TOP 10 EMPRESAS APROVADAS:") print("-" * 60) for i, empresa in enumerate(empresas_aprovadas[:10], 1): print(f"{i:2d}. {empresa['ticker']} - Score: {empresa['score_geral']:.0f}/100") mult = empresa['multiplos'] rent = empresa['rentabilidade'] print(f" P/L: {mult['pl']:.1f} | P/VP: {mult['pvp']:.2f} | ROE: {rent['roe']:.1f}%") print(f" Margem Líquida: {rent['margem_liquida']:.1f}% | Setor: {empresa['setor']}") print() ``` ## Análise Setorial Comparativa ### Benchmarking por Setor ```python def analise_setorial_detalhada(setor_empresas, nome_setor, token=''): """Análise fundamentalista por setor""" analisador = AnalisadorFundamentalista(token) empresas_setor = [] print(f"📊 ANÁLISE SETORIAL - {nome_setor.upper()}") print("=" * 60) for ticker in setor_empresas: analise = analisador.calcular_todos_indicadores(ticker) if analise: empresas_setor.append(analise) if not empresas_setor: return None # Calcular estatísticas do setor estatisticas = calcular_estatisticas_setor(empresas_setor) # Ranking por score ranking = sorted(empresas_setor, key=lambda x: x['score_geral'], reverse=True) # Exibir resultados print(f"\n📈 ESTATÍSTICAS DO SETOR ({len(empresas_setor)} empresas):") print("-" * 40) print(f"P/L Médio: {estatisticas['pl_medio']:.1f}") print(f"P/VP Médio: {estatisticas['pvp_medio']:.2f}") print(f"ROE Médio: {estatisticas['roe_medio']:.1f}%") print(f"Margem Líquida Média: {estatisticas['margem_media']:.1f}%") print(f"Debt/Equity Médio: {estatisticas['debt_equity_medio']:.2f}") print(f"\n🏆 RANKING DO SETOR:") print("-" * 40) for i, empresa in enumerate(ranking, 1): score = empresa['score_geral'] mult = empresa['multiplos'] rent = empresa['rentabilidade'] print(f"{i:2d}. {empresa['ticker']} - Score: {score:.0f}/100") print(f" P/L: {mult['pl']:.1f} | ROE: {rent['roe']:.1f}% | ML: {rent['margem_liquida']:.1f}%") return { 'estatisticas': estatisticas, 'ranking': ranking, 'lider_setor': ranking[0] if ranking else None } def calcular_estatisticas_setor(empresas): """Calcula estatísticas agregadas do setor""" pls = [e['multiplos']['pl'] for e in empresas if e['multiplos']['pl'] > 0] pvps = [e['multiplos']['pvp'] for e in empresas if e['multiplos']['pvp'] > 0] roes = [e['rentabilidade']['roe'] for e in empresas if e['rentabilidade']['roe'] > 0] margens = [e['rentabilidade']['margem_liquida'] for e in empresas if e['rentabilidade']['margem_liquida'] > 0] debt_equity = [e['endividamento']['debt_to_equity'] for e in empresas if e['endividamento']['debt_to_equity'] > 0] return { 'pl_medio': sum(pls) / len(pls) if pls else 0, 'pvp_medio': sum(pvps) / len(pvps) if pvps else 0, 'roe_medio': sum(roes) / len(roes) if roes else 0, 'margem_media': sum(margens) / len(margens) if margens else 0, 'debt_equity_medio': sum(debt_equity) / len(debt_equity) if debt_equity else 0 } # Análise por setores setores = { 'Bancos': ['ITUB4', 'BBDC4', 'BBAS3', 'SANB11', 'BPAC11'], 'Mineração': ['VALE3', 'CSNA3', 'USIM5', 'GOAU4'], 'Energia Elétrica': ['EGIE3', 'CMIG4', 'ENBR3', 'TAEE11', 'SBSP3'], 'Petróleo': ['PETR4', 'PRIO3'], 'Varejo': ['MGLU3', 'LREN3', 'AMER3', 'PCAR3'] } # Executar análise para cada setor resultados_setoriais = {} for nome_setor, empresas in setores.items(): resultado = analise_setorial_detalhada(empresas, nome_setor) if resultado: resultados_setoriais[nome_setor] = resultado # Comparação entre setores print(f"\n🔍 COMPARAÇÃO ENTRE SETORES") print("=" * 60) for setor, dados in resultados_setoriais.items(): stats = dados['estatisticas'] lider = dados['lider_setor'] print(f"\n📊 {setor}:") print(f" ROE Médio: {stats['roe_medio']:.1f}% | Líder: {lider['ticker']}") print(f" P/L Médio: {stats['pl_medio']:.1f} | Margem Média: {stats['margem_media']:.1f}%") ``` ## Dashboard de Monitoramento ### Sistema de Alertas ```python def sistema_alertas_fundamentalista(watchlist, parametros_alerta, token=''): """Sistema de alertas baseado em indicadores fundamentalistas""" analisador = AnalisadorFundamentalista(token) alertas = { 'oportunidades': [], 'deterioracao': [], 'riscos': [] } for ticker in watchlist: analise = analisador.calcular_todos_indicadores(ticker) if not analise: continue # Verificar oportunidades if (analise['multiplos']['pl'] < parametros_alerta['pl_oportunidade'] and analise['rentabilidade']['roe'] > parametros_alerta['roe_min_oportunidade']): alertas['oportunidades'].append({ 'ticker': ticker, 'motivo': 'P/L baixo com ROE alto', 'pl': analise['multiplos']['pl'], 'roe': analise['rentabilidade']['roe'] }) # Verificar deterioração if analise['score_geral'] < parametros_alerta['score_min_qualidade']: alertas['deterioracao'].append({ 'ticker': ticker, 'motivo': 'Score fundamentalista baixo', 'score': analise['score_geral'] }) # Verificar riscos if (analise['endividamento']['debt_to_equity'] > parametros_alerta['debt_equity_max'] or analise['liquidez']['liquidez_corrente'] < parametros_alerta['liquidez_min']): alertas['riscos'].append({ 'ticker': ticker, 'motivo': 'Alto endividamento ou baixa liquidez', 'debt_equity': analise['endividamento']['debt_to_equity'], 'liquidez': analise['liquidez']['liquidez_corrente'] }) return alertas # Configurar alertas watchlist_pessoal = ['ITUB4', 'PETR4', 'VALE3', 'WEGE3', 'MGLU3'] parametros = { 'pl_oportunidade': 12, 'roe_min_oportunidade': 15, 'score_min_qualidade': 60, 'debt_equity_max': 1.0, 'liquidez_min': 1.2 } alertas = sistema_alertas_fundamentalista(watchlist_pessoal, parametros) # Exibir alertas print("🚨 SISTEMA DE ALERTAS FUNDAMENTALISTA") print("=" * 50) if alertas['oportunidades']: print("\n💎 OPORTUNIDADES DETECTADAS:") for opp in alertas['oportunidades']: print(f"• {opp['ticker']}: {opp['motivo']}") print(f" P/L: {opp['pl']:.1f} | ROE: {opp['roe']:.1f}%") if alertas['deterioracao']: print("\n⚠️ DETERIORAÇÃO DE QUALIDADE:") for det in alertas['deterioracao']: print(f"• {det['ticker']}: {det['motivo']}") print(f" Score: {det['score']:.0f}/100") if alertas['riscos']: print("\n🔴 RISCOS IDENTIFICADOS:") for risco in alertas['riscos']: print(f"• {risco['ticker']}: {risco['motivo']}") print(f" D/E: {risco['debt_equity']:.2f} | LC: {risco['liquidez']:.2f}") if not any(alertas.values()): print("\n✅ Nenhum alerta ativo. Carteira dentro dos parâmetros.") ``` ## Casos Práticos de Análise ### Exemplo 1: Análise Bancária (ITUB4) **Indicadores-Chave para Bancos:** * ROE > 15% * P/VP próximo a 1,0-1,5 * Eficiência (relação custo/receita) * Qualidade da carteira de crédito ### Exemplo 2: Análise Industrial (WEGE3) **Indicadores-Chave para Indústria:** * ROIC > 12% * Margem EBITDA > 15% * Giro dos ativos * Crescimento sustentável ### Exemplo 3: Análise Utilities (EGIE3) **Indicadores-Chave para Utilities:** * Dividend Yield > 5% * Debt/Equity controlado * ROE estável * Crescimento de dividendos ## Estratégias de Investimento ### 1. **Growth Investing** * Foco: Crescimento de receita e lucro * Indicadores: ROE, crescimento, ROIC * Aceita múltiplos mais altos ### 2. **Value Investing** * Foco: Múltiplos baixos * Indicadores: P/L, P/VP, EV/EBITDA * Empresas temporariamente desvalorizadas ### 3. **Quality Investing** * Foco: Empresas de alta qualidade * Indicadores: ROE consistente, baixo endividamento * Múltiplos justos por qualidade superior ### 4. **Dividend Investing** * Foco: Renda passiva * Indicadores: DY, payout ratio, histórico * Empresas maduras e estáveis ## Conclusão Os indicadores fundamentalistas são ferramentas essenciais para análise de investimentos. Use este guia como referência, mas lembre-se de sempre considerar o contexto setorial, macroeconômico e qualitativo. ### Pontos-Chave para Sucesso: 1. **Combine Indicadores**: Nunca analise um único indicador isoladamente 2. **Compare com Pares**: Use benchmarks setoriais adequados 3. **Considere Tendências**: Analise evolução temporal, não apenas snapshot 4. **Contextualize**: Considere ciclo econômico e perspectivas futuras 5. **Diversifique**: Não concentre apenas em empresas "baratas" ### Próximos Passos: * **[Implemente screening personalizado](/blog/analise-fundamentalista-acoes-indicadores-essenciais-investir-b3)** com seus critérios * **[Combine com análise técnica](/quotes)** para timing de entrada * **[Use nossa API](/docs)** para automatizar análises * **[Construa sua carteira](/blog/como-construir-carteira-investimentos-diversificada-brapi)** baseada em fundamentos ### Recursos Complementares: * **[Análise P/L específica](/blog/entendendo-indicador-preco-lucro-pl-analise-fundamentalista)** * **[Análise P/VP detalhada](/blog/como-usar-indicador-pvp-valor-patrimonial-analise-acoes)** * **[ROE e eficiência](/blog/roe-return-equity-como-avaliar-eficiencia-gestao-empresarial)** * **[Enterprise Value](/blog/enterprise-value-ev-como-calcular-valor-real-empresa)** **Lembre-se**: A análise fundamentalista é uma ferramenta poderosa, mas deve ser usada junto com gestão de risco e diversificação adequada! # EBIT e EBITDA 2025: Guia Completo para Análise de Eficiência Operacional URL: /blog/guia-ebit-e-ebitda.mdx Domine EBIT e EBITDA para análise fundamentalista! Aprenda a calcular, interpretar e usar esses indicadores essenciais para investir em ações na B3. Guia completo com exemplos práticos ✓ *** searchable: true title: 'EBIT e EBITDA 2025: Guia Completo para Análise de Eficiência Operacional' description: 'Domine EBIT e EBITDA para análise fundamentalista! Aprenda a calcular, interpretar e usar esses indicadores essenciais para investir em ações na B3. Guia completo com exemplos práticos ✓' date: '2025-08-22' keywords: 'EBIT EBITDA Brasil 2025, análise fundamentalista, eficiência operacional, margem EBITDA, lucro operacional, indicadores financeiros, B3, valuation empresas' author: 'Equipe brapi.dev' category: 'Análise Fundamentalista' subcategory: 'Indicadores Operacionais' readingTime: '14 min' tags: \['EBIT', 'EBITDA', 'Análise Fundamentalista', 'Eficiência Operacional', 'Margem EBITDA', 'Investimentos', 'B3', 'Indicadores'] relatedPosts: \['roe-return-equity-como-avaliar-eficiencia-gestao-empresarial', 'enterprise-value-ev-como-calcular-valor-real-empresa', 'analise-fundamentalista-acoes-indicadores-essenciais-investir-b3'] featured: true expertise: 'Especialistas em análise de eficiência operacional com 8+ anos de experiência no mercado brasileiro' lastReviewed: '2025-08-22' -------------------------- import { Authors, Author } from '~/components/Authors'; # EBIT e EBITDA: O Que É, Como Calcular e Sua Importância para Investir em Ações > Explore o universo do EBITDA - um indicador fundamental na análise de > empresas. Descubra como calcular o EBITDA, sua margem, e por que é essencial > para o investimento em ações. ## O que é EBITDA (LAJIDA) O EBITDA é um indicador financeiro amplamente utilizado pelos analistas financeiros para avaliar a lucratividade operacional de uma empresa. Ele oferece uma visão clara da lucratividade de uma empresa a partir de suas operações principais, desconsiderando os impactos de decisões financeiras, depreciações, amortizações e impostos. O EBITDA é calculado da seguinte forma: EBITDA = Lucro Operacional + Depreciação + Amortização Este indicador é especialmente útil para empresas com grandes quantidades de ativos fixos que são depreciados ao longo do tempo, ou para empresas que passaram por fusões e aquisições e, portanto, têm grandes quantidades de amortização. Por se concentrar apenas na lucratividade das operações principais, o EBITDA pode ser uma maneira eficaz de comparar a eficiência operacional de diferentes empresas, mesmo aquelas que operam em diferentes setores ou países com diferentes regimes fiscais. No entanto, é importante lembrar que, como o EBITDA exclui custos importantes como juros, impostos, depreciação e amortização, ele deve ser usado em conjunto com outras métricas financeiras para obter uma visão completa da saúde financeira de uma empresa. Na [brapi](https://brapi.dev), entendemos a importância de indicadores financeiros como o EBITDA para uma tomada de decisões assertiva de investimento. Oferecemos uma gama completa de ferramentas e recursos para ajudar os investidores a entender e analisar esses indicadores, auxiliando-os a tomar decisões de investimento mais informadas. ## O que é EBIT (LAJIR) O EBIT (Lucro Antes de Juros e Impostos), também conhecido como LAJIR (Lucro Antes de Juros e Impostos), é uma métrica financeira usada para avaliar a lucratividade operacional de uma empresa. Ela indica o quanto uma empresa gerou de lucro com suas atividades operacionais, sem levar em consideração os efeitos dos juros e impostos. O EBIT é uma medida importante porque se concentra nas operações de uma empresa, o que a torna uma ferramenta útil para comparar a eficiência operacional entre diferentes empresas. Isso é particularmente verdadeiro em setores onde as empresas têm níveis variados de endividamento e estruturas fiscais complexas. A fórmula para calcular o EBIT é bastante simples: EBIT = Receita Operacional - Despesas Operacionais A Receita Operacional refere-se ao dinheiro gerado pelas atividades principais do negócio, enquanto as Despesas Operacionais incluem custos com pessoal, matérias-primas, energia e outros custos associados à produção e entrega de bens e serviços. Por exemplo, se uma empresa tem uma receita operacional de $1 milhão e despesas operacionais de $800.000, seu EBIT seria de $200.000. Isso significa que, depois de cobrir todos os seus custos operacionais, a empresa teria um lucro operacional de $200.000. A compreensão do EBIT pode ajudar os investidores a ter uma visão clara da lucratividade da operação principal de uma empresa, antes de considerar os efeitos dos juros e impostos. Isso pode ser particularmente útil ao comparar empresas com diferentes níveis de dívida e estruturas fiscais. ## O EBITDA na prática A utilidade do EBITDA se dá por sua capacidade de fornecer uma visão clara da operação da empresa, destacando a eficiência de sua produção. Ele é um indicador que permite ao investidor entender o quanto a empresa gera de dinheiro com sua atividade principal. Por isso, o EBITDA é comumente definido como uma métrica da geração de caixa operacional. ## Importância do EBITDA O EBITDA (Lucro Antes de Juros, Impostos, Depreciação e Amortização) é uma medida amplamente usada por investidores e analistas para avaliar a performance e a lucratividade de uma empresa. Ele oferece uma visão mais clara da operação da empresa, eliminando fatores que podem distorcer o resultado final, como impostos, depreciação e amortização. A seguir, algumas razões que destacam a importância do EBITDA: 1. **Comparabilidade**: O EBITDA permite comparar a lucratividade de diferentes empresas, eliminando os efeitos das decisões de financiamento, depreciação de ativos e regimes fiscais. Isso o torna uma métrica útil para comparar empresas dentro do mesmo setor, especialmente em setores capital-intensivos ou com altos níveis de depreciação e amortização. 2. **Foco na operação**: Ao excluir juros, impostos, depreciação e amortização, o EBITDA se concentra no resultado operacional de uma empresa, proporcionando uma visão mais clara de como a empresa está performando em sua operação principal. 3. **Indicador de fluxo de caixa**: O EBITDA pode ser usado como um proxy para o fluxo de caixa operacional, pois mede o dinheiro que a empresa gera a partir de suas operações antes de levar em consideração o custo do capital (juros), impostos e a depreciação e amortização de seus ativos. 4. **Avaliação de empresa**: O EBITDA é frequentemente usado em avaliações de empresas, pois é uma medida útil para calcular múltiplos de valor, como o EV/EBITDA (Valor da Empresa sobre EBITDA), que é um indicador comum de valor relativo no mercado de ações. Embora o EBITDA seja uma ferramenta útil, é importante usá-lo em conjunto com outras métricas financeiras para obter uma visão completa da saúde financeira de uma empresa. Além disso, o EBITDA pode ser manipulado através de práticas contábeis, por isso é crucial examinar também outras medidas financeiras ao analisar a lucratividade de uma empresa. ## EBITDA como calcular Embora o EBITDA não seja um indicador oficialmente reconhecido pelas práticas contábeis adotadas no Brasil, ele pode ser facilmente calculado usando elementos das Demonstrações de Resultados da empresa em questão. O cálculo do EBITDA segue a seguinte fórmula: EBITDA = Lucro Operacional Líquido + Depreciações + Amortizações ## Margem EBITDA A Margem EBITDA é uma métrica financeira que mede a lucratividade de uma empresa antes de juros, impostos, depreciação e amortização em relação à sua receita total. Ela fornece uma visão clara da lucratividade operacional da empresa, independente de elementos como estrutura fiscal, estratégia de financiamento e práticas de depreciação. A fórmula para calcular a Margem EBITDA é: Margem EBITDA = (EBITDA / Receita Total) x 100 A margem EBITDA é expressa como uma porcentagem, fornecendo uma medida do lucro operacional de uma empresa como uma porcentagem de sua receita total. Uma margem EBITDA mais alta indica que uma empresa é mais eficiente em transformar receita em lucro operacional. Por exemplo, se a Margem EBITDA de uma empresa é de 20%, isso significa que ela gera um lucro operacional de 20 centavos para cada dólar de receita que gera. Comparar a Margem EBITDA de diferentes empresas pode ajudar os investidores a entender qual empresa é mais eficiente em termos operacionais. No entanto, como acontece com todas as métricas financeiras, é importante usar a Margem EBITDA em conjunto com outras métricas para obter uma visão completa da saúde financeira de uma empresa. ## Margem EBIT A Margem EBIT é uma métrica financeira que mede a lucratividade operacional de uma empresa em relação às suas receitas totais. É calculada dividindo o EBIT (Lucro Antes de Juros e Impostos) pela receita total e multiplicando o resultado por 100 para obter um percentual. A fórmula para calcular a Margem EBIT é: Margem EBIT = (EBIT / Receita Total) x 100 Esta métrica é particularmente útil para comparar a eficiência operacional de diferentes empresas dentro do mesmo setor, pois normaliza os efeitos das diferenças de tamanho entre as empresas. Uma Margem EBIT elevada indica que uma empresa está gerando um lucro operacional significativo em relação às suas receitas, o que geralmente é visto como um sinal de eficiência e força operacional. Por outro lado, uma Margem EBIT baixa pode sugerir que a empresa está lutando para controlar seus custos operacionais ou que suas receitas estão em declínio. É importante lembrar, no entanto, que a Margem EBIT pode variar significativamente entre diferentes setores. Portanto, ao usar esta métrica para comparar empresas, é melhor comparar empresas dentro do mesmo setor. ## Diferença EBIT e EBITDA (Difereça entre LAJIR e LAJIDA) O EBIT, ou Lucro Operacional, é um resultado preliminar na obtenção do EBITDA. Ele representa o lucro que a empresa obteve com as atividades diretamente ligadas ao negócio. A principal diferença entre os dois é que o EBITDA adiciona de volta ao EBIT os valores de depreciação e amortização, oferecendo uma visão mais precisa da geração de caixa efetiva da empresa. | Métrica | Descrição | | --------------- | ----------------------------------------------------------------------------------------------------------------------- | | EBIT | Mede a lucratividade operacional de uma empresa sem considerar os efeitos dos juros e impostos. | | EBITDA | Mede a lucratividade operacional de uma empresa antes de juros, impostos, depreciação e amortização. | | Lucro Líquido | Mede a lucratividade de uma empresa após todos os custos, incluindo juros e impostos. | | Fluxo de Caixa | Mede a quantidade de dinheiro que entra e sai de uma empresa durante um período específico. | | EBITDA Ajustado | Uma versão modificada do EBITDA que exclui itens não recorrentes ou não caixa. | | Margem EBIT | Mede a lucratividade operacional de uma empresa em relação às suas receitas totais. | | Margem EBITDA | Mede a lucratividade de uma empresa antes de juros, impostos, depreciação e amortização em relação à sua receita total. | ## EBIT Como calcular O EBIT, ou Lucro Antes de Juros e Impostos, é uma métrica financeira que é usada para analisar a lucratividade operacional de uma empresa sem considerar os efeitos dos juros e impostos. O EBIT é calculado subtraindo-se as despesas operacionais da receita operacional. As despesas operacionais são os custos associados à operação diária de um negócio. Elas incluem custos com pessoal, matérias-primas, energia, entre outros. O cálculo do EBIT segue a seguinte fórmula: EBIT = Receita Operacional - Despesas Operacionais ## EBITDA vs EBIT Tanto o EBITDA (Lucro Antes de Juros, Impostos, Depreciação e Amortização) quanto o EBIT são indicadores que fornecem uma visão da eficiência operacional de uma empresa. No entanto, existem diferenças significativas entre eles. O EBITDA é mais abrangente, pois considera os efeitos de depreciação e amortização, que são custos associados à desvalorização de ativos de uma empresa ao longo do tempo. Estes custos podem ser significativos em setores que dependem de grandes investimentos em ativos, como o setor de manufatura. Por outro lado, o EBIT é mais preciso ao analisar a lucratividade operacional, pois exclui os efeitos de depreciação e amortização, que podem ser considerados custos não recorrentes. ## EBITDA vs Lucro Líquido O EBITDA e o Lucro Líquido são indicadores que fornecem uma visão da eficiência operacional de uma empresa. Ambos são úteis para entender a lucratividade de uma empresa, mas têm diferenças importantes. O EBITDA, como mencionado anteriormente, é mais abrangente, pois considera os efeitos de depreciação e amortização. O Lucro Líquido, por outro lado, é mais preciso, pois exclui os efeitos de depreciação e amortização, além de considerar os custos com juros e impostos. ## EBITDA vs Fluxo de Caixa O EBITDA e o Fluxo de Caixa são indicadores que fornecem uma visão da eficiência operacional de uma empresa. O EBITDA, como mencionado anteriormente, é mais abrangente, pois considera os efeitos de depreciação e amortização. Por outro lado, o Fluxo de Caixa é um indicador mais preciso da saúde financeira de uma empresa, pois mede a quantidade de dinheiro que entra e sai de uma empresa durante um período específico. Diferentemente do EBITDA, o Fluxo de Caixa também considera as atividades de investimento e financiamento da empresa. ## EBITDA vs EBITDA Ajustado O EBITDA e o EBITDA Ajustado são indicadores que fornecem uma visão da eficiência operacional de uma empresa. O EBITDA Ajustado é uma versão modificada do EBITDA que exclui itens não recorrentes ou não caixa que podem distorcer a verdadeira lucratividade operacional de uma empresa. Assim como o EBITDA, o EBITDA Ajustado considera os efeitos de depreciação e amortização. No entanto, o EBITDA Ajustado é mais preciso, pois exclui os efeitos de depreciação e amortização que podem ser considerados não recorrentes, proporcionando assim uma visão mais clara do desempenho operacional da empresa. ## Divida Liquida EBITDA A proporção dívida líquida EBITDA é um indicador-chave da saúde financeira de uma empresa. Ele compara a dívida total de uma empresa, menos as disponibilidades, com seu EBITDA. Esse múltiplo permite avaliar a capacidade de uma empresa de honrar suas dívidas com base na geração de caixa que obtém de suas atividades operacionais. Quanto menor a relação, mais saudável é a empresa financeiramente. ## Margem EBITDA por Setor A margem EBITDA pode variar significativamente dependendo do setor em que a empresa atua. Setores com alta intensidade de capital, como petróleo e gás ou construção, geralmente têm margens EBITDA mais altas do que setores de serviços ou varejo, que têm menores necessidades de capital. Comparar a margem EBITDA de uma empresa com a média de seu setor pode proporcionar insights valiosos sobre sua eficiência operacional relativa. ## EBITDA Ajustado O EBITDA ajustado é uma medida do EBITDA que leva em consideração itens não recorrentes, extraordinários ou não operacionais que podem distorcer a verdadeira lucratividade operacional de uma empresa. Esses ajustes podem incluir despesas de reestruturação, ganhos ou perdas por venda de ativos, entre outros. Ao ajustar esses itens, o EBITDA ajustado oferece uma visão mais precisa do desempenho operacional contínuo da empresa. ## Perguntas frequentes ### 1. **O que é EBIT?** EBIT é a abreviação de Earnings Before Interest and Taxes, ou Lucro Antes de Juros e Impostos em português. É uma medida de lucratividade operacional que exclui os efeitos de juros e impostos. ### 2. **Como calcular o EBIT?** O EBIT é calculado subtraindo-se as despesas operacionais da receita operacional. A fórmula é: EBIT = Receita Operacional - Despesas Operacionais. ### 3. **O que é EBITDA?** EBITDA significa Earnings Before Interest, Taxes, Depreciation, and Amortization, ou Lucro Antes de Juros, Impostos, Depreciação e Amortização em português. É uma medida de lucratividade operacional que exclui os efeitos de juros, impostos, depreciação e amortização. ### 4. **Como calcular o EBITDA?** O EBITDA é calculado adicionando depreciação e amortização ao EBIT. A fórmula é: EBITDA = EBIT + Depreciação + Amortização. ### 5. **Qual é a diferença entre EBIT e EBITDA?** A principal diferença entre EBIT e EBITDA é que o EBITDA adiciona depreciação e amortização de volta ao EBIT. Isso faz do EBITDA uma medida de lucratividade mais abrangente para empresas com grandes quantidades de ativos depreciáveis. ### 6. **O que é a margem EBIT e como calculá-la?** A Margem EBIT é a porcentagem de lucro operacional que uma empresa gera a partir de sua receita total. É calculada dividindo o EBIT pela receita total e multiplicando o resultado por 100. ### 7. **O que é a margem EBITDA e como calculá-la?** A Margem EBITDA é a porcentagem de lucro operacional antes de juros, impostos, depreciação e amortização que uma empresa gera a partir de sua receita total. É calculada dividindo o EBITDA pela receita total e multiplicando o resultado por 100. ### 8. **Por que o EBITDA é importante?** O EBITDA é importante porque fornece uma visão clara da lucratividade operacional de uma empresa, excluindo os efeitos de decisões de financiamento, depreciação e amortização e regimes fiscais. Ele é usado para comparar a eficiência operacional entre diferentes empresas e é um indicador comum na avaliação de empresas. ## Conclusão Em resumo, o EBITDA é uma ferramenta valiosa para analisar o desempenho operacional de uma empresa. Ele permite aos investidores e analistas avaliar a eficiência de uma empresa em gerar caixa a partir de suas atividades principais, independentemente de seu tamanho ou setor. No entanto, como qualquer indicador, o EBITDA não deve ser usado isoladamente, mas sim como parte de uma [análise financeira mais ampla](https://brapi.dev/docs). Na brapi, acreditamos que um entendimento completo dos indicadores financeiros é fundamental para tomar decisões de investimento informadas e bem-sucedidas. Para aprender mais sobre investimentos em ações e análises financeiras, visite nossa seção de [documentos sobre ações](https://brapi.dev/docs/acoes) e explore nossos [módulos opcionais](https://brapi.dev/docs/acoes#modules-opcional). # Conheça a Nova IA Assistente da brapi: Tire Suas Dúvidas Sobre a API URL: /blog/ia-assistente-brapi-tire-suas-duvidas.mdx Lançamos nossa IA assistente! Agora você pode perguntar qualquer coisa sobre a API da brapi, tirar dúvidas de implementação e receber ajuda personalizada para seus projetos financeiros. *** searchable: true title: 'Conheça a Nova IA Assistente da brapi: Tire Suas Dúvidas Sobre a API' description: 'Lançamos nossa IA assistente! Agora você pode perguntar qualquer coisa sobre a API da brapi, tirar dúvidas de implementação e receber ajuda personalizada para seus projetos financeiros.' date: '2025-10-15' keywords: 'ia assistente brapi, ajuda api, suporte inteligente, dúvidas implementação, assistente virtual, api financeira, desenvolvimento' author: 'Equipe brapi.dev' category: 'Anúncios e Novidades' subcategory: 'Lançamentos' readingTime: '6 min' tags: \[ 'IA', 'Assistente', 'Suporte', 'API', 'Novidades', 'Desenvolvimento', 'Ajuda', ] relatedPosts: \[ 'lancamento-sdks-oficiais-typescript-python', 'como-usar-api-brapi-analise-acoes-guia-completo-desenvolvedores', 'api-b3-typescript-javascript-integracao-completa', ] featured: true expertise: 'Inteligência Artificial e experiência do desenvolvedor' lastReviewed: '2025-10-15' -------------------------- import { Author, Authors } from '~/components/Authors'; # Conheça a Nova IA Assistente da brapi: Tire Suas Dúvidas Sobre a API > Estamos muito felizes em apresentar nossa nova IA assistente! Uma ferramenta > inteligente que vai revolucionar como você interage com a API da brapi, > oferecendo ajuda instantânea e personalizada para todas as suas dúvidas. ## O Que É a IA Assistente da brapi? Nossa IA assistente é um sistema inteligente treinado especificamente para: * **Responder perguntas sobre a API** - Desde endpoints básicos até configurações avançadas * **Ajudar na implementação** - Exemplos práticos e código funcional para seu projeto * **Solucionar problemas** - Diagnóstico rápido de erros e sugestões de correção * **Otimizar integrações** - Dicas para melhorar performance e boas práticas * **Documentação interativa** - Explicações claras com exemplos em tempo real ## Como Funciona? A IA assistente está disponível diretamente na nossa documentação e pode ajudar com: ### 📚 **Perguntas Sobre a API** ``` "Como faço para buscar cotações de múltiplas ações?" "Quais parâmetros posso usar no endpoint de histórico?" "Como funciona a autenticação por token?" ``` ### 💻 **Ajuda com Implementação** ``` "Me mostre um exemplo em React para buscar dados da PETR4" "Como integrar com Next.js usando Server Components?" "Qual a melhor forma de tratar erros da API?" ``` ### 🔧 **Solução de Problemas** ``` "Estou recebendo erro 429, o que significa?" "Por que minha requisição está retornando vazia?" "Como otimizar múltiplas requisições?" ``` ## Exemplos Práticos de Ajuda ### Exemplo 1: Implementação Básica **Pergunta do usuário:** *"Como começo a usar a API para buscar cotações em JavaScript?"* **Resposta da IA:** ```javascript // Exemplo básico com fetch const token = 'SEU_TOKEN'; const ticker = 'PETR4'; const response = await fetch( `https://brapi.dev/api/quote/${ticker}?token=${token}`, ); if (!response.ok) { throw new Error(`Erro: ${response.status}`); } const data = await response.json(); console.log(data.results[0].regularMarketPrice); // Para múltiplos tickers: const response = await fetch( `https://brapi.dev/api/quote/PETR4,VALE3,ITUB4?token=${token}`, ); ``` ### Exemplo 2: Integração com React **Pergunta do usuário:** *"Como criar um componente React para exibir cotações em tempo real?"* **Resposta da IA:** ```jsx import { useState, useEffect } from 'react'; function StockQuote({ ticker }) { const [data, setData] = useState(null); const [loading, setLoading] = useState(true); const [error, setError] = useState(null); useEffect(() => { async function fetchQuote() { try { const response = await fetch( `https://brapi.dev/api/quote/${ticker}?token=${process.env.REACT_APP_BRAPI_TOKEN}`, ); if (!response.ok) { throw new Error(`HTTP ${response.status}`); } const result = await response.json(); setData(result.results[0]); } catch (err) { setError(err.message); } finally { setLoading(false); } } fetchQuote(); // Atualiza a cada 15 minutos const interval = setInterval(fetchQuote, 15 * 60 * 1000); return () => clearInterval(interval); }, [ticker]); if (loading) return Carregando...; if (error) returnErro: {error}; return (); } ``` ### Exemplo 3: Tratamento de Erros Avançado **Pergunta do usuário:** *"Qual a melhor forma de tratar os diferentes tipos de erro da API?"* **Resposta da IA:** ```javascript class BrapiError extends Error { constructor(message, status, data) { super(message); this.status = status; this.data = data; } } async function fetchWithHandling(url, token) { try { const response = await fetch(`${url}?token=${token}`); if (!response.ok) { const errorData = await response.json().catch(() => ({})); switch (response.status) { case 401: throw new BrapiError('Token inválido ou expirado', 401, errorData); case 404: throw new BrapiError('Ticker não encontrado', 404, errorData); case 429: throw new BrapiError( 'Limite de requisições excedido', 429, errorData, ); case 500: throw new BrapiError('Erro interno do servidor', 500, errorData); default: throw new BrapiError( `Erro HTTP ${response.status}`, response.status, errorData, ); } } return await response.json(); } catch (error) { if (error instanceof BrapiError) { throw error; } throw new BrapiError('Erro de conexão', 0, { originalError: error.message, }); } } // Uso try { const data = await fetchWithHandling( 'https://brapi.dev/api/quote/PETR4', 'SEU_TOKEN', ); console.log(data); } catch (error) { if (error.status === 401) { // Redirecionar para login ou mostrar formulário de token console.log('Por favor, verifique seu token de API'); } else if (error.status === 429) { // Implementar retry com backoff exponencial console.log('Aguarde um pouco antes de tentar novamente'); } else { console.error('Erro:', error.message); } } ``` ## Recursos Avançados da IA ### 🎯 **Contexto Inteligente** A IA mantém o contexto da conversa, permitindo: ```javascript // Usuário: "Como buscar dados da PETR4?" // IA: Mostra exemplo básico // Usuário: "Agora adicione os dados fundamentalistas" // IA: Adiciona parâmetro modules ao exemplo anterior // Usuário: "E o histórico dos últimos 6 meses?" // IA: Adiciona parâmetros range e interval ``` ### 🔍 **Análise de Código** Cole seu código e receba sugestões: ```javascript // Código do usuário: const fetchStock = async (ticker) => { const res = await fetch(`https://brapi.dev/api/quote/${ticker}`); return res.json(); }; // Sugestão da IA: // "Seu código está quase perfeito! Algumas melhorias: // 1. Adicione o token de autenticação // 2. Verifique se a resposta foi bem-sucedida // 3. Adicione tratamento de erros // 4. Considere usar async/await com try/catch" ``` ### 📊 **Métricas e Performance** A IA pode analisar seu uso e sugerir otimizações: * **Cache inteligente** - Quando e como implementar cache * **Batch requests** - Otimizar múltiplas requisições * **Rate limiting** - Estratégias para evitar limites * **Performance** - Melhores práticas para resposta rápida ## Casos de Uso Comuns ### 📈 **Desenvolvedores Frontend** ```javascript // Pergunta: "Como criar um dashboard com múltiplas ações?" // Resposta: Componente React com estado global, atualização automática // e tratamento de loading/erros ``` ### 🖥️ **Desenvolvedores Backend** ```python # Pergunta: "Como criar um endpoint proxy em Node.js?" # Resposta: Express.js middleware com cache Redis, # rate limiting e tratamento de erros centralizado ``` ### 📱 **Desenvolvedores Mobile** ```dart // Pergunta: "Como integrar com Flutter?" // Resposta: Pacote http, tratamento de JSON, # state management com Provider/Bloc ``` ### 🤖 **Cientistas de Dados** ```python # Pergunta: "Como analisar séries históricas com pandas?" # Resposta: Coleta de dados, tratamento de missing values, # visualização com matplotlib/plotly ``` ## Dicas para Melhores Interações ### ✅ **Boas Práticas** 1. **Seja específico** - "Como buscar dados fundamentalistas da VALE3?" é melhor que "Como usar a API?" 2. **Forneça contexto** - "Estou usando React com TypeScript e preciso..." 3. **Mostre seu código** - Cole trechos de código que não estão funcionando 4. **Descreva o erro** - "Estou recebendo 404 ao buscar XYZ123" em vez de "Não funciona" ### ❌ **Evite** 1. **Perguntas muito amplas** - "Me ensine a programar" 2. **Informações sensíveis** - Nunca compartilhe tokens ou chaves de API 3. **Código muito longo** - Foque na parte relevante do problema ## Integração com Ferramentas Existentes A IA assistente funciona perfeitamente com: * **SDKs Oficiais** - Exemplos específicos para TypeScript e Python * **Documentação** - Links diretos para seções relevantes * **Playground** - Teste código diretamente no navegador * **Exemplos** - Biblioteca de exemplos prontos para usar ## Feedback Contínuo Nossa IA aprende continuamente: * **Com cada interação** - Melhora suas respostas * **Com feedback dos usuários** - Avalie as respostas como úteis ou não * **Com atualizações da API** - Sempre atualizada com novos recursos ## Como Acessar a IA Assistente ### 🌐 **Via Documentação** Acesse: [brapi.dev/docs](https://brapi.dev/docs) e clique no ícone de chat no canto inferior direito. ### 💬 **Integração Direta** Em breve também estará disponível: * **Slack/Discord** - Bot para comunidades * **VS Code** - Extensão para desenvolvimento * **CLI** - Comando direto no terminal ## Exemplos de Conversas Reais ### Conversa 1: Iniciante ``` Usuário: Olá! Como começo a usar a API? IA: Olá! Para começar, você precisa: 1. Obter um token gratuito em brapi.dev 2. Fazer uma requisição para o endpoint de cotações 3. Adicionar seu token como parâmetro Quer um exemplo prático em qual linguagem? ``` ### Conversa 2: Problema Técnico ``` Usuário: Estou recebendo erro 429 ao fazer muitas requisições IA: Erro 429 significa rate limit excedido. Soluções: 1. Implemente cache de 15 minutos (dados são atualizados nesse intervalo) 2. Use batch requests para múltiplos tickers 3. Adicione delay entre requisições Quer um exemplo de implementação de cache? ``` ### Conversa 3: Projeto Avançado ``` Usuário: Preciso criar um sistema de alertas de preços IA: Para um sistema de alertas, sugiro: 1. Backend com agendador (cron job) 2. Comparação com limiares configuráveis 3. Notificações por email/webhook 4. Banco de dados para histórico Posso te mostrar uma arquitetura completa. Qual sua preferência de tecnologia? ``` ## Limitações e Melhorias Futuras ### 🚧 **Limitações Atuais** * Acesso apenas à documentação pública da API * Não pode acessar dados da sua conta * Respostas baseadas em conhecimento treinado ### 🚀 **Roadmap** * **Contexto de projeto** - Lembrar-se dos seus projetos anteriores * **Análise de performance** - Sugestões baseadas no seu uso real * **Integração com IDEs** - Assistente direto no seu editor * **Multi-idioma** - Suporte completo para inglês e espanhol ## Dicas de Ouro ### 💡 **Para Iniciantes** 1. **Comece simples** - Use os endpoints básicos primeiro 2. **Teste no playground** - Experimente antes de implementar 3. **Leia a documentação** - A IA complementa, não substitui ### 🎯 **Para Intermediários** 1. **Explore módulos** - Dados fundamentalistas enriquecem análises 2. **Otimize requisições** - Cache e batch requests economizam tempo 3. **Trate erros** - Sua aplicação ficará mais robusta ### 🚀 **Para Avançados** 1. **Use webhooks** - Para atualizações em tempo real 2. **Implemente retry** - Para maior confiabilidade 3. **Monitore performance** - Métricas são essenciais ## Conclusão Nossa IA assistente representa um avanço significativo em como oferecemos suporte aos desenvolvedores. Com ajuda instantânea, exemplos práticos e orientação personalizada, seu desenvolvimento com a API da brapi nunca foi tão eficiente. Seja você um iniciante dando os primeiros passos ou um desenvolvedor experiente buscando otimizações, nossa IA está aqui para ajudar. *** ## Comece Agora! 1. **Acesse a documentação** - [brapi.dev/docs](https://brapi.dev/docs) 2. **Clique no chat** - Ícone no canto inferior direito 3. **Faça sua primeira pergunta** - Sem compromisso, sem cadastro **Dúvidas sobre a IA assistente?** Ela mesma pode responder! 😉 *** **Gostou da novidade?** Compartilhe com outros desenvolvedores e ajude-nos a melhorar cada vez mais! 🚀 # Indicadores Econômicos 2025: Como SELIC, IPCA e IGP-M Afetam Investimentos URL: /blog/indicadores-economicos-brasil-selic-ipca-igpm-impacto-investimentos.mdx Domine indicadores econômicos brasileiros! Aprenda como SELIC, IPCA, IGP-M, CDI impactam seus investimentos. Guia completo para decisões macroeconômicas inteligentes ✓ *** searchable: true title: 'Indicadores Econômicos 2025: Como SELIC, IPCA e IGP-M Afetam Investimentos' description: 'Domine indicadores econômicos brasileiros! Aprenda como SELIC, IPCA, IGP-M, CDI impactam seus investimentos. Guia completo para decisões macroeconômicas inteligentes ✓' date: '2025-08-22' keywords: 'indicadores econômicos brasil, SELIC, IPCA, IGP-M, CDI, impacto investimentos, cenário macroeconômico, política monetária, inflação, brapi' author: 'Equipe brapi.dev' category: 'Economia e Investimentos' subcategory: 'Análise Macroeconômica' readingTime: '19 min' tags: \['Indicadores Econômicos', 'SELIC', 'IPCA', 'Economia', 'Investimentos', 'Política Monetária', 'Inflação', 'Macroeconomia'] relatedPosts: \['como-construir-carteira-investimentos-diversificada-brapi', 'fundos-imobiliarios-fiis-guia-completo-investir-renda-passiva', 'analise-fundamentalista-acoes-indicadores-essenciais-investir-b3'] featured: true expertise: 'Análise macroeconômica com 8+ anos de experiência no mercado brasileiro' lastReviewed: '2025-08-22' -------------------------- import { Authors, Author } from '~/components/Authors'; # Indicadores Econômicos 2025: Como SELIC, IPCA e IGP-M Afetam Investimentos > Os indicadores econômicos brasileiros são fundamentais para decisões de investimento inteligentes. Aprenda como SELIC, IPCA, IGP-M e outros afetam suas aplicações e como monitorá-los para maximizar retornos em 2025.{data.shortName}
R$ {data.regularMarketPrice.toFixed(2)}
= 0 ? 'positive' : 'negative' } > {data.regularMarketChangePercent >= 0 ? '▲' : '▼'} {Math.abs(data.regularMarketChangePercent).toFixed(2)}%
*** ## Por Que Indicadores Econômicos São Cruciais para Investidores? **Os indicadores econômicos direcionam o comportamento dos mercados financeiros** e determinam a atratividade relativa entre diferentes classes de ativos. Entender sua dinâmica é essencial para timing e alocação de recursos. **Em termos práticos:** Quando a SELIC sobe, renda fixa fica mais atrativa que ações. Quando inflação acelera, ativos reais podem ser melhores que nominais. ### Impactos Diretos nos seus Investimentos: 1. **SELIC** determina retorno da renda fixa 2. **Inflação** afeta poder de compra real 3. **PIB** influencia crescimento das empresas 4. **Câmbio** impacta exportadoras e importadoras 5. **Desemprego** afeta consumo e varejo ### 3. **Gestão de Riscos** * Proteção contra inflação * Alocação entre ativos * Timing de investimentos ## Principais Indicadores Econômicos ### 1. Taxa SELIC A **SELIC (Sistema Especial de Liquidação e Custódia)** é a taxa básica de juros da economia brasileira, definida pelo COPOM (Comitê de Política Monetária). #### Como Funciona a SELIC ```python import requests from datetime import datetime, timedelta def obter_selic_atual(): """Obtém taxa SELIC atual via brapi.dev""" try: url = "https://brapi.dev/api/prime-rate?token=SEU_TOKEN" response = requests.get(url) data = response.json() if data and 'prime-rate' in data: selic_dados = data['prime-rate'] return { 'taxa_atual': selic_dados[-1]['value'], 'data_atualizacao': selic_dados[-1]['date'], 'historico_6m': selic_dados[-6:], # Últimos 6 meses 'tendencia': calcular_tendencia_selic(selic_dados[-12:]) } except Exception as e: print(f"Erro ao obter SELIC: {e}") return None def calcular_tendencia_selic(historico): """Calcula tendência da SELIC""" if len(historico) < 2: return "Estável" valor_atual = historico[-1]['value'] valor_anterior = historico[-2]['value'] if valor_atual > valor_anterior + 0.25: return "Alta" elif valor_atual < valor_anterior - 0.25: return "Baixa" else: return "Estável" # Exemplo de uso selic_info = obter_selic_atual() if selic_info: print("💰 TAXA SELIC") print("=" * 30) print(f"Taxa Atual: {selic_info['taxa_atual']:.2f}% a.a.") print(f"Última Atualização: {selic_info['data_atualizacao']}") print(f"Tendência: {selic_info['tendencia']}") print(f"\n📊 Histórico 6 meses:") for periodo in selic_info['historico_6m']: print(f" {periodo['date']}: {periodo['value']:.2f}%") ``` #### Impactos da SELIC nos Investimentos **SELIC Alta (acima de 10%):** * ✅ **Renda Fixa**: CDB, LCI/LCA, Tesouro mais atrativo * ❌ **Ações**: Competição por capital, menor apetite risco * ❌ **FIIs**: Yields perdem atratividade relativa * ✅ **Dólar**: Real pode se fortalecer **SELIC Baixa (abaixo de 6%):** * ❌ **Renda Fixa**: Rentabilidade reduzida * ✅ **Ações**: Maior busca por rentabilidade * ✅ **FIIs**: Yields mais atrativos vs. renda fixa * ❌ **Dólar**: Real pode se enfraquecer ### 2. IPCA (Inflação) O **IPCA (Índice Nacional de Preços ao Consumidor Amplo)** é o indicador oficial de inflação do Brasil, usado para metas do governo. ```python def obter_ipca_dados(): """Obtém dados do IPCA via brapi.dev""" try: url = "https://brapi.dev/api/inflation?token=SEU_TOKEN" response = requests.get(url) data = response.json() if data and 'inflation' in data: ipca_dados = data['inflation'] # Calcular inflação acumulada 12 meses ultimos_12m = ipca_dados[-12:] inflacao_12m = calcular_inflacao_acumulada(ultimos_12m) return { 'ipca_mensal': ipca_dados[-1]['value'], 'data_referencia': ipca_dados[-1]['date'], 'ipca_12m': inflacao_12m, 'historico_12m': ultimos_12m, 'meta_governo': 3.25, # Meta central 2024 'banda_superior': 4.75, # Teto da meta 'banda_inferior': 1.75 # Piso da meta } except Exception as e: print(f"Erro ao obter IPCA: {e}") return None def calcular_inflacao_acumulada(historico_mensal): """Calcula inflação acumulada em 12 meses""" acumulado = 1.0 for periodo in historico_mensal: acumulado *= (1 + periodo['value'] / 100) return (acumulado - 1) * 100 def analisar_cenario_inflacionario(ipca_dados): """Analisa cenário inflacionário""" ipca_12m = ipca_dados['ipca_12m'] meta = ipca_dados['meta_governo'] teto = ipca_dados['banda_superior'] piso = ipca_dados['banda_inferior'] if ipca_12m > teto: cenario = { 'status': 'ACIMA DA META', 'cor': 'vermelho', 'descricao': 'Inflação acima do teto, pressão para alta da SELIC', 'impacto_investimentos': 'Favor renda fixa, cuidado com ações' } elif ipca_12m < piso: cenario = { 'status': 'ABAIXO DA META', 'cor': 'azul', 'descricao': 'Inflação baixa, espaço para corte de juros', 'impacto_investimentos': 'Favor ações e ativos de risco' } elif piso <= ipca_12m <= teto: cenario = { 'status': 'DENTRO DA META', 'cor': 'verde', 'descricao': 'Inflação controlada, SELIC estável', 'impacto_investimentos': 'Cenário favorável para diversificação' } else: distancia_meta = abs(ipca_12m - meta) if distancia_meta < 0.5: cenario = { 'status': 'PRÓXIMO DA META', 'cor': 'amarelo', 'descricao': 'Inflação próxima ao centro da meta', 'impacto_investimentos': 'Cenário estável' } else: cenario = { 'status': 'DISTANTE DA META', 'cor': 'laranja', 'descricao': 'Inflação se afastando da meta', 'impacto_investimentos': 'Atenção às mudanças de política monetária' } return cenario # Exemplo de análise IPCA ipca_info = obter_ipca_dados() if ipca_info: print("📈 IPCA - INFLAÇÃO") print("=" * 30) print(f"IPCA Mensal: {ipca_info['ipca_mensal']:.2f}%") print(f"IPCA 12 meses: {ipca_info['ipca_12m']:.2f}%") print(f"Meta do Governo: {ipca_info['meta_governo']:.2f}%") cenario = analisar_cenario_inflacionario(ipca_info) print(f"\nCenário: {cenario['status']}") print(f"Análise: {cenario['descricao']}") print(f"Impacto: {cenario['impacto_investimentos']}") ``` ### 3. IGP-M (Índice Geral de Preços) O **IGP-M** é usado principalmente em contratos de aluguel e alguns investimentos. Tende a ser mais volátil que o IPCA. ```python def comparar_indices_inflacao(): """Compara IPCA vs IGP-M""" # Dados históricos comparativos (exemplo) comparacao = { 'periodo': '2023', 'ipca': 4.62, 'igpm': 5.45, 'diferenca': 0.83, 'caracteristicas': { 'ipca': { 'foco': 'Famílias 1-40 salários mínimos', 'peso_alimentacao': 23.12, 'peso_transporte': 18.77, 'uso_principal': 'Meta de inflação do governo' }, 'igpm': { 'foco': 'Preços no atacado, construção civil', 'peso_atacado': 60, 'peso_varejo': 30, 'uso_principal': 'Contratos de aluguel' } } } return comparacao def calcular_impacto_carteira_inflacao(carteira, ipca_atual, igpm_atual): """Calcula impacto da inflação na carteira""" impactos = [] for ativo in carteira: tipo = ativo['tipo'] valor = ativo['valor'] if tipo == 'CDB_PRE': # CDB pré-fixado perde com inflação alta rentabilidade_real = ativo['taxa'] - ipca_atual impacto = { 'ativo': ativo['nome'], 'tipo': 'Renda Fixa Pré', 'rentabilidade_real': rentabilidade_real, 'status': 'Positiva' if rentabilidade_real > 0 else 'Negativa', 'recomendacao': 'Trocar por pós-fixado' if rentabilidade_real < 2 else 'Manter' } elif tipo == 'TESOURO_IPCA': # Tesouro IPCA+ protegido da inflação impacto = { 'ativo': ativo['nome'], 'tipo': 'Renda Fixa Inflação', 'rentabilidade_real': ativo['taxa_real'], 'status': 'Protegida', 'recomendacao': 'Excelente proteção' } elif tipo == 'ACAO': # Ações podem se beneficiar de inflação moderada impacto = { 'ativo': ativo['nome'], 'tipo': 'Renda Variável', 'rentabilidade_real': 'Variável', 'status': 'Moderada' if ipca_atual < 6 else 'Atenção', 'recomendacao': 'Focar empresas com pricing power' } elif tipo == 'FII': # FIIs podem se beneficiar com aluguéis indexados ao IGP-M impacto = { 'ativo': ativo['nome'], 'tipo': 'Fundo Imobiliário', 'rentabilidade_real': f'Benefício IGP-M: {igpm_atual:.1f}%', 'status': 'Positiva', 'recomendacao': 'Bom hedge inflacionário' } impactos.append(impacto) return impactos # Exemplo de carteira carteira_exemplo = [ {'nome': 'CDB Banco X', 'tipo': 'CDB_PRE', 'valor': 50000, 'taxa': 12.5}, {'nome': 'Tesouro IPCA+ 2029', 'tipo': 'TESOURO_IPCA', 'valor': 30000, 'taxa_real': 5.8}, {'nome': 'PETR4', 'tipo': 'ACAO', 'valor': 20000}, {'nome': 'HGLG11', 'tipo': 'FII', 'valor': 15000} ] # Análise de impacto impactos_inflacao = calcular_impacto_carteira_inflacao(carteira_exemplo, 4.5, 5.2) print("\n💰 IMPACTO INFLAÇÃO NA CARTEIRA") print("=" * 50) for impacto in impactos_inflacao: print(f"\n{impacto['ativo']} ({impacto['tipo']}):") print(f" Status: {impacto['status']}") print(f" Rentabilidade Real: {impacto['rentabilidade_real']}") print(f" Recomendação: {impacto['recomendacao']}") ``` ### 4. CDI (Certificado de Depósito Interbancário) O **CDI** é referência para investimentos de renda fixa privada, acompanhando de perto a SELIC. ```python def analisar_cdi_vs_selic(): """Analisa relação CDI vs SELIC""" # Dados comparativos (exemplo) dados_comparativos = { 'selic_atual': 11.75, 'cdi_atual': 11.65, 'diferenca': 0.10, 'historico': [ {'periodo': '2024-01', 'selic': 11.75, 'cdi': 11.65}, {'periodo': '2023-12', 'selic': 11.75, 'cdi': 11.65}, {'periodo': '2023-11', 'selic': 11.75, 'cdi': 11.65} ] } # Calcular spread médio spreads = [abs(h['selic'] - h['cdi']) for h in dados_comparativos['historico']] spread_medio = sum(spreads) / len(spreads) return { 'dados': dados_comparativos, 'spread_medio': spread_medio, 'relacao': 'CDI tradicionalmente 0.1-0.2% abaixo da SELIC' } def calcular_rentabilidade_cdi(valor_inicial, percentual_cdi, periodo_dias): """Calcula rentabilidade baseada no CDI""" cdi_anual = 11.65 # Exemplo: CDI atual cdi_aplicado = cdi_anual * (percentual_cdi / 100) # Ex: 100% do CDI # Fórmula de juros compostos com CDI taxa_periodo = (1 + cdi_aplicado / 100) ** (periodo_dias / 365) - 1 valor_final = valor_inicial * (1 + taxa_periodo) return { 'valor_inicial': valor_inicial, 'valor_final': valor_final, 'rendimento': valor_final - valor_inicial, 'rentabilidade_percentual': taxa_periodo * 100, 'cdi_aplicado': cdi_aplicado, 'periodo_dias': periodo_dias } # Exemplo de cálculo CDI rendimento_cdi = calcular_rentabilidade_cdi(100000, 100, 365) # R$ 100k, 100% CDI, 1 ano print("\n💳 ANÁLISE CDI") print("=" * 30) print(f"Investimento: R$ {rendimento_cdi['valor_inicial']:,.2f}") print(f"CDI Aplicado: {rendimento_cdi['cdi_aplicado']:.2f}% a.a.") print(f"Período: {rendimento_cdi['periodo_dias']} dias") print(f"Valor Final: R$ {rendimento_cdi['valor_final']:,.2f}") print(f"Rendimento: R$ {rendimento_cdi['rendimento']:,.2f}") print(f"Rentabilidade: {rendimento_cdi['rentabilidade_percentual']:.2f}%") ``` ## Monitoramento Integrado de Indicadores ### Dashboard Macroeconômico ```python class DashboardMacroeconomico: def __init__(self, token): self.token = token self.indicadores = {} def atualizar_todos_indicadores(self): """Atualiza todos os indicadores econômicos""" print("Atualizando indicadores...") # SELIC self.indicadores['selic'] = self.obter_selic() # IPCA self.indicadores['ipca'] = self.obter_ipca() # CDI (estimado baseado na SELIC) if self.indicadores['selic']: self.indicadores['cdi'] = { 'taxa': self.indicadores['selic']['taxa'] - 0.1, 'data': self.indicadores['selic']['data'] } # Cenário consolidado self.indicadores['cenario'] = self.analisar_cenario_macro() return self.indicadores def obter_selic(self): """Obtém dados da SELIC""" try: url = f"https://brapi.dev/api/prime-rate?token={self.token}" response = requests.get(url) data = response.json() if data and 'prime-rate' in data: ultimo = data['prime-rate'][-1] return { 'taxa': ultimo['value'], 'data': ultimo['date'] } except: return None def obter_ipca(self): """Obtém dados do IPCA""" try: url = f"https://brapi.dev/api/inflation?token={self.token}" response = requests.get(url) data = response.json() if data and 'inflation' in data: ultimos_12m = data['inflation'][-12:] ipca_acumulado = calcular_inflacao_acumulada(ultimos_12m) return { 'mensal': data['inflation'][-1]['value'], 'acumulado_12m': ipca_acumulado, 'data': data['inflation'][-1]['date'] } except: return None def analisar_cenario_macro(self): """Analisa cenário macroeconômico consolidado""" if not self.indicadores.get('selic') or not self.indicadores.get('ipca'): return {'status': 'DADOS INSUFICIENTES'} selic = self.indicadores['selic']['taxa'] ipca_12m = self.indicadores['ipca']['acumulado_12m'] taxa_real = selic - ipca_12m # Análise de cenário if taxa_real > 4: cenario = { 'status': 'JUROS ALTOS', 'taxa_real': taxa_real, 'descricao': 'Taxa real alta, favorável à renda fixa', 'recomendacao': 'Aumentar posição em renda fixa', 'impacto_acoes': 'Negativo', 'impacto_fiis': 'Negativo' } elif taxa_real > 2: cenario = { 'status': 'JUROS MODERADOS', 'taxa_real': taxa_real, 'descricao': 'Taxa real adequada, cenário equilibrado', 'recomendacao': 'Manter diversificação', 'impacto_acoes': 'Neutro', 'impacto_fiis': 'Neutro' } else: cenario = { 'status': 'JUROS BAIXOS', 'taxa_real': taxa_real, 'descricao': 'Taxa real baixa, busca por renda variável', 'recomendacao': 'Aumentar posição em ações e FIIs', 'impacto_acoes': 'Positivo', 'impacto_fiis': 'Positivo' } return cenario def gerar_relatorio(self): """Gera relatório consolidado""" relatorio = { 'data_geracao': datetime.now().strftime('%d/%m/%Y %H:%M'), 'indicadores': self.indicadores, 'alertas': self.identificar_alertas(), 'recomendacoes': self.gerar_recomendacoes() } return relatorio def identificar_alertas(self): """Identifica alertas importantes""" alertas = [] if self.indicadores.get('ipca'): ipca_12m = self.indicadores['ipca']['acumulado_12m'] if ipca_12m > 4.75: # Teto da meta alertas.append({ 'tipo': 'INFLACAO_ALTA', 'mensagem': f'IPCA {ipca_12m:.1f}% acima do teto da meta (4.75%)', 'severidade': 'ALTA' }) elif ipca_12m < 1.75: # Piso da meta alertas.append({ 'tipo': 'INFLACAO_BAIXA', 'mensagem': f'IPCA {ipca_12m:.1f}% abaixo do piso da meta (1.75%)', 'severidade': 'MEDIA' }) if self.indicadores.get('selic'): selic = self.indicadores['selic']['taxa'] if selic > 13: alertas.append({ 'tipo': 'SELIC_MUITO_ALTA', 'mensagem': f'SELIC {selic:.1f}% em nível muito elevado', 'severidade': 'ALTA' }) elif selic < 3: alertas.append({ 'tipo': 'SELIC_MUITO_BAIXA', 'mensagem': f'SELIC {selic:.1f}% em nível muito baixo', 'severidade': 'MEDIA' }) return alertas def gerar_recomendacoes(self): """Gera recomendações de alocação""" if not self.indicadores.get('cenario'): return [] cenario = self.indicadores['cenario']['status'] if cenario == 'JUROS ALTOS': return [ 'Aumentar alocação em renda fixa (60-70%)', 'Reduzir exposição a ações de crescimento', 'Evitar FIIs com yields baixos', 'Considerar Tesouro SELIC para liquidez' ] elif cenario == 'JUROS BAIXOS': return [ 'Aumentar alocação em ações (50-60%)', 'Buscar FIIs com yields atrativos', 'Reduzir renda fixa para o mínimo estratégico', 'Considerar ações de crescimento' ] else: return [ 'Manter alocação equilibrada (40% RF, 40% RV, 20% FIIs)', 'Diversificar entre setores defensivos e cíclicos', 'Acompanhar evolução dos indicadores', 'Rebalancear conforme mudanças macro' ] # Exemplo de uso do dashboard dashboard = DashboardMacroeconomico('SEU_TOKEN') indicadores = dashboard.atualizar_todos_indicadores() relatorio = dashboard.gerar_relatorio() print("🌍 DASHBOARD MACROECONÔMICO") print("=" * 50) print(f"Data: {relatorio['data_geracao']}") if indicadores.get('selic'): print(f"\n💰 SELIC: {indicadores['selic']['taxa']:.2f}%") if indicadores.get('ipca'): print(f"📊 IPCA (12m): {indicadores['ipca']['acumulado_12m']:.2f}%") if indicadores.get('cdi'): print(f"💳 CDI: {indicadores['cdi']['taxa']:.2f}%") if indicadores.get('cenario'): cenario = indicadores['cenario'] print(f"\n🎯 CENÁRIO: {cenario['status']}") print(f"Taxa Real: {cenario['taxa_real']:.2f}%") print(f"Descrição: {cenario['descricao']}") print(f"\n⚠️ ALERTAS:") for alerta in relatorio['alertas']: print(f" • {alerta['mensagem']} (Severidade: {alerta['severidade']})") print(f"\n💡 RECOMENDAÇÕES:") for rec in relatorio['recomendacoes']: print(f" • {rec}") ``` ## Estratégias por Cenário Macroeconômico ### Alocação Tática de Ativos ```python def estrategia_por_cenario(cenario_macro, valor_carteira=100000): """Define estratégia de alocação baseada no cenário""" estrategias = { 'JUROS_ALTOS_INFLACAO_CONTROLADA': { 'nome': 'Defensiva - Renda Fixa', 'alocacao': { 'tesouro_selic': 30, 'cdb_di': 25, 'tesouro_ipca': 15, 'acoes_defensivas': 20, 'fiis': 10 }, 'justificativa': 'Juros altos favorecem renda fixa', 'expectativa_retorno': 'SELIC - 1%' }, 'JUROS_BAIXOS_INFLACAO_CONTROLADA': { 'nome': 'Agressiva - Renda Variável', 'alocacao': { 'acoes_crescimento': 35, 'acoes_value': 25, 'fiis': 20, 'tesouro_ipca': 10, 'reserva_liquidez': 10 }, 'justificativa': 'Busca por yield em cenário de juros baixos', 'expectativa_retorno': 'IPCA + 6-8%' }, 'JUROS_ALTOS_INFLACAO_ALTA': { 'nome': 'Proteção Inflacionária', 'alocacao': { 'tesouro_ipca': 40, 'acoes_commodities': 25, 'fiis': 15, 'tesouro_selic': 15, 'ouro_dolar': 5 }, 'justificativa': 'Proteção contra inflação alta', 'expectativa_retorno': 'IPCA + 3-5%' }, 'CENARIO_INCERTO': { 'nome': 'Balanceada - Diversificação', 'alocacao': { 'tesouro_ipca': 25, 'acoes_diversificadas': 30, 'fiis': 20, 'cdb_di': 15, 'reserva': 10 }, 'justificativa': 'Diversificação em cenário incerto', 'expectativa_retorno': 'CDI + 2-4%' } } return estrategias.get(cenario_macro, estrategias['CENARIO_INCERTO']) def simular_carteira_cenarios(valor_inicial, cenario_atual): """Simula performance da carteira em diferentes cenários""" estrategia = estrategia_por_cenario(cenario_atual, valor_inicial) # Simulação de retornos (12 meses) retornos_esperados = { 'tesouro_selic': 11.75, 'cdb_di': 11.65, 'tesouro_ipca': 15.5, # IPCA + taxa real 'acoes_defensivas': 12.0, 'acoes_crescimento': 15.0, 'acoes_value': 13.0, 'acoes_commodities': 10.0, 'acoes_diversificadas': 13.5, 'fiis': 11.0, 'reserva_liquidez': 10.0, 'reserva': 10.0, 'ouro_dolar': 8.0 } simulacao = { 'estrategia': estrategia['nome'], 'valor_inicial': valor_inicial, 'alocacao_detalhada': {}, 'valor_final_esperado': 0, 'retorno_total_esperado': 0 } valor_total_final = 0 for ativo, percentual in estrategia['alocacao'].items(): valor_ativo = valor_inicial * (percentual / 100) retorno_ativo = retornos_esperados.get(ativo, 10) / 100 valor_final_ativo = valor_ativo * (1 + retorno_ativo) simulacao['alocacao_detalhada'][ativo] = { 'percentual': percentual, 'valor_inicial': valor_ativo, 'retorno_esperado': retorno_ativo * 100, 'valor_final': valor_final_ativo, 'ganho': valor_final_ativo - valor_ativo } valor_total_final += valor_final_ativo simulacao['valor_final_esperado'] = valor_total_final simulacao['retorno_total_esperado'] = ((valor_total_final / valor_inicial) - 1) * 100 return simulacao # Exemplo de simulação cenario_exemplo = 'JUROS_ALTOS_INFLACAO_CONTROLADA' simulacao_resultado = simular_carteira_cenarios(100000, cenario_exemplo) print(f"\n💼 SIMULAÇÃO DE CARTEIRA") print("=" * 50) print(f"Cenário: {cenario_exemplo}") print(f"Estratégia: {simulacao_resultado['estrategia']}") print(f"Valor Inicial: R$ {simulacao_resultado['valor_inicial']:,.2f}") print(f"Valor Final Esperado: R$ {simulacao_resultado['valor_final_esperado']:,.2f}") print(f"Retorno Esperado: {simulacao_resultado['retorno_total_esperado']:+.2f}%") print(f"\n📊 ALOCAÇÃO DETALHADA:") for ativo, dados in simulacao_resultado['alocacao_detalhada'].items(): print(f"\n{ativo.replace('_', ' ').title()}: {dados['percentual']}%") print(f" Valor: R$ {dados['valor_inicial']:,.2f}") print(f" Retorno: {dados['retorno_esperado']:.2f}%") print(f" Ganho: R$ {dados['ganho']:+,.2f}") ``` ## Alertas e Automação ### Sistema de Monitoramento Automático ```python def configurar_alertas_macro(parametros_alerta): """Configura alertas para indicadores macroeconômicos""" alertas_config = { 'selic': { 'limite_superior': parametros_alerta.get('selic_max', 15), 'limite_inferior': parametros_alerta.get('selic_min', 2), 'variacao_maxima': parametros_alerta.get('selic_variacao', 0.75) # 0.75 p.p. }, 'ipca': { 'limite_superior': parametros_alerta.get('ipca_max', 4.75), # Teto da meta 'limite_inferior': parametros_alerta.get('ipca_min', 1.75), # Piso da meta 'variacao_maxima': parametros_alerta.get('ipca_variacao', 1.0) }, 'taxa_real': { 'limite_inferior': parametros_alerta.get('taxa_real_min', 2), 'limite_superior': parametros_alerta.get('taxa_real_max', 6) } } return alertas_config def verificar_alertas_indicadores(indicadores_atuais, alertas_config): """Verifica se algum alerta deve ser disparado""" alertas_disparados = [] # Verificar SELIC if indicadores_atuais.get('selic'): selic = indicadores_atuais['selic']['taxa'] config_selic = alertas_config['selic'] if selic > config_selic['limite_superior']: alertas_disparados.append({ 'tipo': 'SELIC_ALTA', 'mensagem': f'SELIC {selic:.2f}% acima do limite ({config_selic["limite_superior"]}%)', 'acao_sugerida': 'Aumentar renda fixa' }) elif selic < config_selic['limite_inferior']: alertas_disparados.append({ 'tipo': 'SELIC_BAIXA', 'mensagem': f'SELIC {selic:.2f}% abaixo do limite ({config_selic["limite_inferior"]}%)', 'acao_sugerida': 'Aumentar renda variável' }) # Verificar IPCA if indicadores_atuais.get('ipca'): ipca = indicadores_atuais['ipca']['acumulado_12m'] config_ipca = alertas_config['ipca'] if ipca > config_ipca['limite_superior']: alertas_disparados.append({ 'tipo': 'INFLACAO_ALTA', 'mensagem': f'IPCA {ipca:.2f}% acima da meta ({config_ipca["limite_superior"]}%)', 'acao_sugerida': 'Aumentar proteção inflacionária' }) elif ipca < config_ipca['limite_inferior']: alertas_disparados.append({ 'tipo': 'INFLACAO_BAIXA', 'mensagem': f'IPCA {ipca:.2f}% abaixo da meta ({config_ipca["limite_inferior"]}%)', 'acao_sugerida': 'Reduzir proteção inflacionária' }) return alertas_disparados def enviar_alerta_telegram_macro(alertas, bot_token, chat_id): """Envia alertas macroeconômicos via Telegram""" if not alertas: return mensagem = "🌍 ALERTAS MACROECONÔMICOS\n\n" for alerta in alertas: emoji = "🔴" if "ALTA" in alerta['tipo'] else "🔵" if "BAIXA" in alerta['tipo'] else "⚠️" mensagem += f"{emoji} {alerta['tipo'].replace('_', ' ')}\n" mensagem += f" {alerta['mensagem']}\n" mensagem += f" 💡 {alerta['acao_sugerida']}\n\n" # Código para enviar via Telegram seria implementado aqui print(f"📱 Enviando alerta: {mensagem}") # Exemplo de configuração de alertas config_alertas = configurar_alertas_macro({ 'selic_max': 14, 'selic_min': 3, 'ipca_max': 4.5, 'ipca_min': 2.0 }) # Verificar alertas com dados atuais alertas_atuais = verificar_alertas_indicadores(indicadores, config_alertas) if alertas_atuais: print("\n🚨 ALERTAS DISPARADOS:") for alerta in alertas_atuais: print(f" • {alerta['mensagem']}") print(f" Ação: {alerta['acao_sugerida']}") else: print("\n✅ Nenhum alerta disparado - indicadores dentro dos parâmetros") ``` ## Conclusão O acompanhamento de indicadores econômicos é fundamental para tomar decisões de investimento bem informadas. A brapi.dev facilita esse monitoramento ao disponibilizar dados atualizados de SELIC, IPCA e outros indicadores essenciais. ### Pontos-Chave: 1. **SELIC** direciona a atratividade entre renda fixa e variável 2. **IPCA** impacta a rentabilidade real dos investimentos 3. **Taxa real** (SELIC - IPCA) é crucial para alocação 4. **Monitoramento contínuo** permite ajustes táticos 5. **Automação de alertas** ajuda na gestão ativa ### Estratégias por Cenário: * **Juros Altos**: Favor renda fixa e Tesouro SELIC * **Juros Baixos**: Favor ações e FIIs com bons yields * **Inflação Alta**: Tesouro IPCA+ e ativos reais * **Incerteza**: Diversificação balanceada ### Próximos Passos: * **[Explore nossa API](/docs)** para dados macroeconômicos atualizados * **[Use nossa plataforma](/quotes)** para análises integradas * **Implemente dashboards** de monitoramento automático * **Configure alertas** para mudanças importantes ### Recursos Adicionais: * **[Análise de FIIs](/blog/fundos-imobiliarios-fiis-guia-completo-investir-renda-passiva)** em diferentes cenários * **[Construção de carteiras](/blog/como-construir-carteira-investimentos-diversificada-brapi)** adaptativas * **[Indicadores fundamentalistas](/blog/analise-fundamentalista-acoes-indicadores-essenciais-investir-b3)** complementares **Lembre-se**: O cenário macroeconômico muda constantemente. Mantenha-se atualizado e ajuste sua estratégia conforme necessário, sempre respeitando seu perfil de risco e objetivos de longo prazo! # Como Integrar Cotações da B3 no Google Sheets: Guia Completo 2025 URL: /blog/integracao-google-sheets-cotacoes-b3-tutorial-completo.mdx Aprenda a criar uma função personalizada no Google Sheets para buscar cotações automáticas da B3, incluindo ETFs que não aparecem no Google Finance. Tutorial passo a passo com Apps Script. *** searchable: true title: 'Como Integrar Cotações da B3 no Google Sheets: Guia Completo 2025' description: 'Aprenda a criar uma função personalizada no Google Sheets para buscar cotações automáticas da B3, incluindo ETFs que não aparecem no Google Finance. Tutorial passo a passo com Apps Script.' date: '2025-10-12' keywords: 'google sheets cotações, apps script b3, etf google sheets, IMAB11, WRLD11, brapi google sheets, cotações automáticas, planilha investimentos' author: 'Equipe brapi.dev' category: 'Tutoriais e Integrações' subcategory: 'Planilhas e Automação' readingTime: '12 min' tags: \['Google Sheets', 'Apps Script', 'ETFs', 'Automação', 'Tutorial', 'Planilhas', 'Investimentos'] relatedPosts: \['como-usar-api-brapi-analise-acoes-guia-completo-desenvolvedores', 'analise-fundamentalista-acoes-indicadores-essenciais-investir-b3'] featured: true expertise: 'Automação de planilhas financeiras com 6+ anos de experiência' lastReviewed: '2025-10-12' -------------------------- import { Author, Authors } from '~/components/Authors'; # Como Integrar Cotações da B3 no Google Sheets: O Guia Definitivo > Descubra como criar uma planilha inteligente que atualiza automaticamente as cotações de ações e ETFs da B3, incluindo aqueles que não aparecem no Google Finance. ## O Problema que Todo Investidor Enfrenta Se você usa o Google Sheets para acompanhar seus investimentos, já deve ter se deparado com esse problema frustrante: **muitos ETFs brasileiros simplesmente não aparecem na função GOOGLEFINANCE**. Ativos como WRLD11, IMAB11, IB5M11 e IRFM11 - fundamentais para uma carteira diversificada - ficam de fora. Você tenta usar `=GOOGLEFINANCE("BVMF:IMAB11")` e recebe apenas um erro. A solução? Atualizar manualmente. Todos. Os. Dias. Mas e se existisse uma forma de automatizar isso completamente? ## A Solução: Função Personalizada com Apps Script Vamos criar uma função personalizada chamada `BRAPI_PRICE()` que busca cotações diretamente da API da brapi.dev. O melhor? É tão simples de usar quanto a função `GOOGLEFINANCE`: ``` =BRAPI_PRICE("IMAB11"; $A$1) ``` ### Por Que Esta Solução é Melhor? 1. **Funciona com todos os ativos da B3** - Ações, ETFs, FIIs, BDRs e índices 2. **Dados confiáveis** - Acesso direto aos dados oficiais da B3 3. **Gratuito** - 15.000 requisições mensais sem custo 4. **Fácil de usar** - Sintaxe simples e familiar 5. **Atualização automática** - Configure e esqueça ## Passo a Passo: Implementação Completa ### Passo 1: Obtenha Seu Token da API 1. Acesse [brapi.dev](https://brapi.dev) 2. Crie uma conta gratuita (leva menos de 1 minuto) 3. No painel de usuário, copie seu **token API** **Importante**: Guarde esse token - você vai precisar dele na planilha. ### Passo 2: Adicione o Código no Apps Script 1. Abra sua planilha no Google Sheets 2. Clique em **Extensões** > **Apps Script** 3. Apague todo o código que aparecer 4. Cole o código abaixo: ```javascript /** * Retorna o preço atual de um ticker da B3 via brapi.dev * * @param {string} ticker - Código do ativo (ex: "PETR4", "VALE3", "IMAB11") * @param {string} token - Token da API brapi.dev * @return {number} Preço atual do ativo * @customfunction */ function BRAPI_PRICE(ticker, token) { if (!ticker) return "Erro: informe ticker"; // Permite passar o token como célula ou string if (token && typeof token === 'object' && token.length) { token = token[0][0]; } // Se não informar token, tenta pegar da célula A1 if (!token) { var sh = SpreadsheetApp.getActiveSpreadsheet().getActiveSheet(); token = sh.getRange('A1').getDisplayValue(); } if (!token) return "Erro: token brapi.dev ausente"; // Formata o ticker ticker = String(ticker).toUpperCase().trim(); if (ticker.indexOf('.') === -1) ticker = ticker + '.SA'; // Faz a requisição var url = 'https://brapi.dev/api/quote/' + encodeURIComponent(ticker) + '?token=' + encodeURIComponent(token); var options = { muteHttpExceptions: true, headers: {'User-Agent': 'Mozilla/5.0'} }; var response = UrlFetchApp.fetch(url, options); if (response.getResponseCode() !== 200) { return "HTTP " + response.getResponseCode() + ": " + response.getContentText().substring(0, 200); } var json = JSON.parse(response.getContentText()); var result = (json && json.results && json.results[0]) || null; if (!result) return "Sem dados retornados"; return result.regularMarketPrice || result.lastPrice || result.close || "Preço não encontrado"; } ``` 5. Clique em **Salvar** (ícone de disquete ou Ctrl+S) 6. Dê um nome ao projeto (ex: "Cotações brapi") 7. Feche a janela do editor ### Passo 3: Configure Sua Planilha 1. Na célula **A1**, cole seu token da API brapi.dev 2. Em qualquer outra célula, use a fórmula: ``` =BRAPI_PRICE("PETR4"; $A$1) ``` Pronto! A cotação aparecerá automaticamente. 🎉 ## Exemplos Práticos de Uso ### Ações Populares ``` =BRAPI_PRICE("PETR4"; $A$1) # Petrobras PN =BRAPI_PRICE("VALE3"; $A$1) # Vale ON =BRAPI_PRICE("ITUB4"; $A$1) # Itaú Unibanco PN =BRAPI_PRICE("BBDC4"; $A$1) # Bradesco PN =BRAPI_PRICE("MGLU3"; $A$1) # Magazine Luiza ON ``` ### ETFs de Renda Fixa (O Grande Diferencial!) Estes ETFs **não funcionam** no Google Finance, mas funcionam perfeitamente com nossa função: ``` =BRAPI_PRICE("IMAB11"; $A$1) # ETF IMA-B (Tesouro IPCA+) =BRAPI_PRICE("IB5M11"; $A$1) # ETF IMA-B 5+ (IPCA+ longo prazo) =BRAPI_PRICE("IRFM11"; $A$1) # ETF IRF-M (Tesouro Prefixado) =BRAPI_PRICE("B5P211"; $A$1) # ETF NTN-B Principal ``` ### ETFs Internacionais ``` =BRAPI_PRICE("WRLD11"; $A$1) # ETF Global (Mundo) =BRAPI_PRICE("IVVB11"; $A$1) # ETF S&P 500 =BRAPI_PRICE("NASD11"; $A$1) # ETF Nasdaq-100 ``` ### Índices e BDRs ``` =BRAPI_PRICE("^BVSP"; $A$1) # Índice Ibovespa =BRAPI_PRICE("AAPL34"; $A$1) # BDR Apple =BRAPI_PRICE("MSFT34"; $A$1) # BDR Microsoft ``` ## Função Avançada: Busque Qualquer Dado Se você quiser mais do que apenas o preço, use esta função avançada: ```javascript /** * Retorna dados completos de um ativo * * @param {string} ticker - Código do ativo * @param {string} token - Token da API * @param {string} field - Campo desejado (regularMarketPrice, currency, shortName, etc) * @return {any} Valor do campo solicitado * @customfunction */ function BRAPI_DATA(ticker, token, field) { if (!ticker) return "Erro: informe ticker"; if (!field) return "Erro: informe campo"; if (token && typeof token === 'object' && token.length) { token = token[0][0]; } if (!token) { var sh = SpreadsheetApp.getActiveSpreadsheet().getActiveSheet(); token = sh.getRange('A1').getDisplayValue(); } if (!token) return "Erro: token ausente"; ticker = String(ticker).toUpperCase().trim(); if (ticker.indexOf('.') === -1) ticker = ticker + '.SA'; var url = 'https://brapi.dev/api/quote/' + encodeURIComponent(ticker) + '?token=' + encodeURIComponent(token); var options = { muteHttpExceptions: true, headers: {'User-Agent': 'Mozilla/5.0'} }; var response = UrlFetchApp.fetch(url, options); if (response.getResponseCode() !== 200) { return "Erro HTTP " + response.getResponseCode(); } var json = JSON.parse(response.getContentText()); var result = (json && json.results && json.results[0]) || null; if (!result) return "Sem dados"; return result[field] || "Campo não encontrado"; } ``` ### Exemplos com BRAPI\_DATA: ``` =BRAPI_DATA("PETR4"; $A$1; "regularMarketPrice") # Preço =BRAPI_DATA("PETR4"; $A$1; "shortName") # Nome =BRAPI_DATA("PETR4"; $A$1; "currency") # Moeda =BRAPI_DATA("PETR4"; $A$1; "regularMarketChange") # Variação R$ =BRAPI_DATA("PETR4"; $A$1; "regularMarketChangePercent") # Variação % =BRAPI_DATA("PETR4"; $A$1; "marketCap") # Valor de mercado =BRAPI_DATA("PETR4"; $A$1; "regularMarketVolume") # Volume negociado ``` ## Criando Uma Planilha Profissional Aqui está um exemplo de como estruturar sua planilha: | A (Token) | B (Ticker) | C (Nome) | D (Preço) | E (Variação %) | F (Atualizado) | | ---------------- | ---------- | --------------------------------- | ---------------------- | -------------------------------------------------- | -------------- | | seu\_token\_aqui | PETR4 | =BRAPI\_DATA(B2;$A$1;"shortName") | =BRAPI\_PRICE(B2;$A$1) | =BRAPI\_DATA(B2;$A$1;"regularMarketChangePercent") | =NOW() | **Dica Pro**: Formate a coluna E com cores condicionais: * Verde se > 0 * Vermelho se \< 0 ## Consumo de API: Você Está Seguro Uma dúvida comum: "Vou estourar meu limite de 15.000 requisições?" **Resposta curta**: Provavelmente não. **Exemplo real**: Uma planilha com 30 ativos diferentes, atualizada 3 vezes por dia durante 30 dias: * Cálculo: 30 ativos × 3 atualizações × 30 dias = **2.700 requisições/mês** * Isso é apenas **18% do limite gratuito**! ### Dicas para Economizar Requisições 1. **Evite referências circulares** - Não use a função em células que recalculam automaticamente 2. **Use atualização manual** - Configure "Cálculo: Manual" nas configurações da planilha 3. **Cache de dados** - Para planilhas grandes, atualize uma vez por dia 4. **Monitore seu uso** - Acesse o painel da brapi.dev para ver quantas requisições você fez ## Troubleshooting: Soluções para Problemas Comuns ### Erro: "token ausente" **Solução**: Verifique se o token está na célula A1 ou sendo passado corretamente na fórmula. ### Erro: "HTTP 401" **Solução**: Token inválido. Copie novamente do painel da brapi.dev. ### Erro: "HTTP 429" **Solução**: Limite de requisições excedido. Aguarde o próximo mês ou considere o plano pago. ### Erro: "Sem dados retornados" **Solução**: Ticker inválido. Verifique o código correto do ativo na B3. ### A função não atualiza automaticamente **Solução**: 1. Configure a planilha para recalcular automaticamente 2. Ou adicione uma célula com `=NOW()` para forçar recálculo 3. Ou pressione Ctrl+Alt+Shift+F9 para recalcular tudo ### Cotação desatualizada **Solução**: O plano gratuito tem delay de \~15 minutos. Para tempo real, considere o plano pago. ## Casos de Uso Avançados ### 1. Acompanhamento de Carteira Crie uma planilha que calcula automaticamente: * Valor total investido * Valor atual da carteira * Rentabilidade por ativo * Rentabilidade total * Distribuição percentual ### 2. Alertas de Preço Use formatação condicional para destacar quando: * Ação cai mais de 5% no dia * Ação atinge preço-alvo * Volume está acima da média ### 3. Histórico de Preços Crie um script que salva os preços diariamente em uma aba separada para análise histórica. ### 4. Rebalanceamento Automático Configure fórmulas que calculam quanto comprar/vender de cada ativo para manter sua alocação desejada. ## Comparação: brapi.dev vs Google Finance | Recurso | Google Finance | brapi.dev | | ---------------------- | -------------- | ------------------- | | Ações B3 | ✅ Parcial | ✅ Todas | | ETFs brasileiros | ❌ Poucos | ✅ Todos | | FIIs | ❌ Não | ✅ Sim | | BDRs | ✅ Alguns | ✅ Todos | | Dados fundamentalistas | ❌ Não | ✅ Sim (via módulos) | | Histórico | ✅ Sim | ✅ Sim | | Tempo real | ✅ Sim | ✅ Plano pago | | API oficial | ❌ Não | ✅ Sim | ## Próximos Passos Agora que você tem sua planilha configurada, explore: 1. **[Documentação completa da API](/docs)** - Descubra todos os dados disponíveis 2. **[Exemplos em outras linguagens](/docs/examples)** - Python, JavaScript, PHP e mais 3. **[Dashboard da brapi.dev](/dashboard)** - Monitore seu uso de API 4. **[Planos e preços](/pricing)** - Considere upgrade para tempo real ## Conclusão Parabéns! Você acabou de criar uma planilha de investimentos profissional que: ✅ Atualiza cotações automaticamente\ ✅ Funciona com TODOS os ativos da B3\ ✅ Inclui ETFs que não aparecem no Google Finance\ ✅ É gratuita para até 15.000 requisições/mês\ ✅ Pode ser expandida com dados fundamentalistas Essa solução transforma uma planilha simples em uma ferramenta poderosa de acompanhamento de investimentos, economizando horas de trabalho manual e garantindo dados sempre atualizados. **Ação agora**: Abra seu Google Sheets e implemente essa solução. Em 5 minutos você terá cotações automáticas da B3! *** **Tem dúvidas ou sugestões?** Entre em contato com nossa equipe de suporte ou compartilhe sua experiência nos comentários. **Gostou deste tutorial?** Compartilhe com outros investidores que também lutam com planilhas desatualizadas! # Anunciando SDKs Oficiais: TypeScript e Python para brapi.dev URL: /blog/lancamento-sdks-oficiais-typescript-python.mdx Lançamos SDKs oficiais para TypeScript/JavaScript e Python! Integre a API da B3 com tipos completos, retry automático e muito mais. Facilite seu desenvolvimento agora. *** searchable: true title: 'Anunciando SDKs Oficiais: TypeScript e Python para brapi.dev' description: 'Lançamos SDKs oficiais para TypeScript/JavaScript e Python! Integre a API da B3 com tipos completos, retry automático e muito mais. Facilite seu desenvolvimento agora.' date: '2025-10-12' keywords: 'brapi sdk, typescript sdk, python sdk, api client, npm package, pypi, desenvolvimento, tipos typescript' author: 'Equipe brapi.dev' category: 'Anúncios e Novidades' subcategory: 'Lançamentos' readingTime: '5 min' tags: \['SDK', 'TypeScript', 'Python', 'Anúncio', 'Novidades', 'Desenvolvimento'] relatedPosts: \['api-b3-typescript-javascript-integracao-completa', 'api-b3-python-requests-guia-pratico'] featured: true expertise: 'Desenvolvimento de SDKs e ferramentas para desenvolvedores' lastReviewed: '2025-10-12' -------------------------- import { Author, Authors } from '~/components/Authors'; # Anunciando SDKs Oficiais para brapi.dev > Estamos muito felizes em anunciar o lançamento das nossas SDKs oficiais para TypeScript/JavaScript e Python! Integrar a API da B3 nunca foi tão fácil. ## O Que São as SDKs? SDKs (Software Development Kits) são bibliotecas que facilitam a integração com nossa API, oferecendo: * **Tipos completos** - Autocomplete e validação no seu IDE * **Tratamento de erros** - Exceções tipadas e mensagens claras * **Retry automático** - Tentativas inteligentes em caso de falha * **API moderna** - Suporte a async/await e promises * **Sempre atualizado** - Gerado automaticamente com nossa API ## SDK TypeScript/JavaScript ### Instalação ```bash npm install brapi # ou yarn add brapi # ou pnpm add brapi # ou bun add brapi ``` ### Exemplo de Uso ```typescript import Brapi from 'brapi'; const client = new Brapi({ apiKey: process.env.BRAPI_API_KEY, }); // Tipos automáticos! const quote = await client.quote.retrieve('PETR4'); console.log(quote.results[0]); // { // symbol: 'PETR4', // regularMarketPrice: 38.45, // regularMarketChangePercent: 2.15, // ... // } ``` ### Características ✅ **Tipos TypeScript completos** - IntelliSense em todo lugar\ ✅ **Bundle otimizado** - Tree-shakeable e pequeno\ ✅ **Node.js e Browser** - Funciona em qualquer ambiente\ ✅ **Next.js ready** - Exemplos para App Router e Pages Router\ ✅ **Tratamento de erros** - Exceções tipadas por status code ### Exemplo Next.js ```typescript // app/stock/[ticker]/page.tsx import Brapi from 'brapi'; const client = new Brapi({ apiKey: process.env.BRAPI_API_KEY, }); export default async function StockPage({ params, }: { params: { ticker: string }; }) { const quote = await client.quote.retrieve(params.ticker); const stock = quote.results[0]; return (
); } ``` **[Ver documentação completa →](/docs/sdks/typescript)** *** ## SDK Python{stock.shortName}
R$ {stock.regularMarketPrice.toFixed(2)}
### Instalação ```bash pip install brapi # Com suporte a aiohttp (opcional) pip install brapi[aiohttp] ``` ### Exemplo de Uso ```python from brapi import Brapi client = Brapi(api_key="seu_token") # Type hints completos! quote = client.quote.retrieve(tickers="PETR4") print(quote.results[0].regular_market_price) ``` ### Características ✅ **Type hints completos** - Autocomplete no IDE\ ✅ **Python 3.8+** - Compatível com versões modernas\ ✅ **Sync e Async** - Cliente síncrono e assíncrono\ ✅ **Powered by httpx** - HTTP/2 e connection pooling\ ✅ **aiohttp support** - Performance otimizada ### Exemplo Assíncrono ```python import asyncio from brapi import AsyncBrapi async def main(): async with AsyncBrapi(api_key="seu_token") as client: quote = await client.quote.retrieve(tickers="PETR4") print(quote.results[0].regular_market_price) asyncio.run(main()) ``` ### Integração com FastAPI ```python from fastapi import FastAPI from brapi import AsyncBrapi app = FastAPI() client = AsyncBrapi(api_key="seu_token") @app.get("/api/quote/{ticker}") async def get_quote(ticker: str): quote = await client.quote.retrieve(tickers=ticker) return { 'symbol': quote.results[0].symbol, 'price': quote.results[0].regular_market_price, } ``` **[Ver documentação completa →](/docs/sdks/python)** *** ## Por Que Usar as SDKs? ### Antes (Sem SDK) ```typescript // TypeScript sem SDK const response = await fetch( `https://brapi.dev/api/quote/PETR4?token=${token}` ); if (!response.ok) { // Você precisa tratar erros manualmente throw new Error(`HTTP ${response.status}`); } const data = await response.json(); // Sem tipos, sem autocomplete 😢 const price = data.results[0].regularMarketPrice; ``` ```python # Python sem SDK import requests response = requests.get( f'https://brapi.dev/api/quote/PETR4?token={token}' ) if response.status_code != 200: # Tratamento manual de erros raise Exception(f'HTTP {response.status_code}') data = response.json() # Sem type hints 😢 price = data['results'][0]['regularMarketPrice'] ``` ### Depois (Com SDK) ```typescript // TypeScript com SDK const quote = await client.quote.retrieve('PETR4'); // ✅ Tipos completos, autocomplete, retry automático const price = quote.results[0].regularMarketPrice; ``` ```python # Python com SDK quote = client.quote.retrieve(tickers="PETR4") # ✅ Type hints, autocomplete, retry automático price = quote.results[0].regular_market_price ``` ## Tratamento de Erros Inteligente As SDKs lançam exceções específicas por tipo de erro: ### TypeScript ```typescript try { const quote = await client.quote.retrieve('INVALID'); } catch (error) { if (error instanceof Brapi.NotFoundError) { console.log('Ticker não encontrado'); } else if (error instanceof Brapi.RateLimitError) { console.log('Limite de requisições atingido'); } else if (error instanceof Brapi.AuthenticationError) { console.log('Token inválido'); } } ``` ### Python ```python from brapi import NotFoundError, RateLimitError try: quote = client.quote.retrieve(tickers="INVALID") except NotFoundError: print("Ticker não encontrado") except RateLimitError: print("Limite de requisições atingido") ``` ## Retry Automático As SDKs tentam automaticamente em caso de: * Erros de conexão * Timeouts (408) * Rate limits (429) * Erros de servidor (5xx) ```typescript const client = new Brapi({ apiKey: process.env.BRAPI_API_KEY, maxRetries: 3, // Tenta até 3 vezes }); ``` ```python client = Brapi( api_key="seu_token", max_retries=3, # Tenta até 3 vezes ) ``` ## Gerado com Stainless Nossas SDKs são geradas automaticamente usando [Stainless](https://www.stainless.com/), garantindo: * ✅ Sempre sincronizadas com a API * ✅ Tipos precisos e atualizados * ✅ Documentação inline * ✅ Padrões de indústria * ✅ Testes automáticos ## Migração Fácil Já usa a API com fetch/requests? Migrar é simples: ### TypeScript ```typescript // Antes const response = await fetch(`https://brapi.dev/api/quote/${ticker}?token=${token}`); const data = await response.json(); const price = data.results[0].regularMarketPrice; // Depois const quote = await client.quote.retrieve(ticker); const price = quote.results[0].regularMarketPrice; ``` ### Python ```python # Antes response = requests.get(f'https://brapi.dev/api/quote/{ticker}?token={token}') data = response.json() price = data['results'][0]['regularMarketPrice'] # Depois quote = client.quote.retrieve(tickers=ticker) price = quote.results[0].regular_market_price ``` ## Recursos Disponíveis Ambas as SDKs suportam todos os endpoints da API: * ✅ Cotações de ações, ETFs, FIIs * ✅ Criptomoedas * ✅ Moedas (câmbio) * ✅ Inflação * ✅ Taxa de juros * ✅ Dados fundamentalistas (módulos) * ✅ Histórico de preços ## Começe Agora ### TypeScript/JavaScript ```bash npm install brapi ``` **Documentação:** [/docs/sdks/typescript](/docs/sdks/typescript)\ **GitHub:** [github.com/brapi-dev/brapi-typescript](https://github.com/brapi-dev/brapi-typescript)\ **NPM:** [npmjs.com/package/brapi](https://www.npmjs.com/package/brapi) ### Python ```bash pip install brapi ``` **Documentação:** [/docs/sdks/python](/docs/sdks/python)\ **GitHub:** [github.com/brapi-dev/brapi-python](https://github.com/brapi-dev/brapi-python)\ **PyPI:** [pypi.org/project/brapi](https://pypi.org/project/brapi/) ## Feedback e Contribuições As SDKs são open-source! Contribuições, issues e feedback são muito bem-vindos: * 🐛 [Reportar bug (TypeScript)](https://github.com/brapi-dev/brapi-typescript/issues) * 🐛 [Reportar bug (Python)](https://github.com/brapi-dev/brapi-python/issues) * 💡 [Sugerir feature](https://github.com/brapi-dev/brapi-typescript/issues) * ⭐ [Star no GitHub](https://github.com/brapi-dev) ## Próximos Passos Explore a documentação completa: * 📚 [SDK TypeScript](/docs/sdks/typescript) * 📚 [SDK Python](/docs/sdks/python) * 📖 [Documentação da API](/docs) * 💻 [Exemplos de integração](/docs/examples) ## Conclusão Estamos muito animados com o lançamento dessas SDKs! Elas representam nosso compromisso em oferecer a melhor experiência para desenvolvedores que trabalham com dados financeiros do Brasil. Instale agora e comece a construir aplicações incríveis com dados da B3! 🚀 *** **Dúvidas ou sugestões?** Entre em contato com nossa equipe de suporte ou abra uma issue no GitHub. **Gostou do anúncio?** Compartilhe com outros desenvolvedores! # Método Bazin 2025: Como Construir Renda Passiva com Dividendos URL: /blog/metodo-bazin-estrategia-renda-passiva-acoes-dividendos.mdx Domine o Método Bazin para renda passiva! Aprenda os critérios de Décio Bazin, yield 6%+, análise de sustentabilidade e seleção de pagadoras. Guia completo ✓ *** searchable: true title: 'Método Bazin 2025: Como Construir Renda Passiva com Dividendos' description: 'Domine o Método Bazin para renda passiva! Aprenda os critérios de Décio Bazin, yield 6%+, análise de sustentabilidade e seleção de pagadoras. Guia completo ✓' date: '2025-08-22' keywords: 'método bazin, décio bazin, renda passiva, dividendos, yield 6%, ações pagadoras dividendos, estratégia dividendos, B3, dividend yield, brapi' author: 'Equipe brapi.dev' category: 'Estratégias de Dividendos' subcategory: 'Métodos de Renda' readingTime: '21 min' tags: \['Método Bazin', 'Renda Passiva', 'Dividendos', 'Yield', 'B3', 'Estratégia', 'Pagadoras', 'Income'] relatedPosts: \['dividend-yield-dy-como-calcular-usar-analise-acoes-dividendos', 'fundos-imobiliarios-fiis-guia-completo-investir-renda-passiva', 'formula-graham-como-calcular-preco-justo-acoes-value-investing'] featured: true expertise: 'Estratégias de renda passiva com 8+ anos de experiência no mercado brasileiro' lastReviewed: '2025-08-22' -------------------------- import { Authors, Author } from '~/components/Authors'; # Método Bazin: Estratégia para Renda Passiva com Ações Pagadoras de Dividendos > O Método Bazin, criado por Décio Bazin, é uma estratégia conservadora focada na geração de renda passiva através de dividendos. Com critérios rigorosos e foco no yield mínimo de 6%, esta metodologia busca proporcionar retorno constante e previsível aos investidores.
*** ## O que é o Método Bazin? O **Método Bazin** é uma estratégia de investimento desenvolvida por Décio Bazin que foca exclusivamente na geração de renda passiva através de dividendos. A metodologia estabelece critérios específicos para selecionar ações que proporcionem um yield mínimo de 6% ao ano. ### Filosofia do Método A estratégia baseia-se no princípio de que é melhor receber uma renda constante e previsível do que apostar na valorização das ações. O foco está em empresas maduras, com histórico sólido de pagamento de dividendos. ## Quem foi Décio Bazin? **Décio Bazin** foi um renomado analista financeiro e escritor brasileiro, conhecido por sua abordagem conservadora aos investimentos. Suas principais contribuições incluem: ### Legado no Mercado Brasileiro * **"Faça Fortuna com Ações"**: Livro clássico sobre investimentos em ações * **Foco em Dividendos**: Pioneiro na análise de ações pagadoras de dividendos no Brasil * **Estratégia Conservadora**: Desenvolveu metodologia para investidores avessos ao risco ### Princípios Fundamentais * Renda passiva é superior à especulação * Empresas sólidas sempre recompensam seus acionistas * Paciência e disciplina são essenciais ## Critérios do Método Bazin ### 1. Dividend Yield Mínimo de 6% A regra fundamental do método é investir apenas em ações com DY igual ou superior a 6%: ``` Preço Teto = (Dividendos por Ação × 100) ÷ 6% ``` **Exemplo:** * Dividendos pagos: R$ 3,60 por ação * Preço teto: (3,60 × 100) ÷ 6 = R$ 60,00 ### 2. Histórico de Dividendos #### Critérios de Histórico: * **Pelo menos 5 anos** pagando dividendos * **Crescimento ou estabilidade** dos dividendos * **Ausência de cortes** significativos nos dividendos ### 3. Empresas Consolidadas #### Características Desejáveis: * Liderança no setor * Negócio previsível e estável * Baixa ciclicidade * Posição defensiva no mercado ### 4. Solidez Financeira #### Indicadores Financeiros: * Endividamento controlado * Margens operacionais estáveis * Geração consistente de caixa * ROE sustentável ## Calculando o Preço Teto com brapi.dev Use a [API da brapi.dev](/docs/acoes) para obter dados de dividendos e calcular o preço teto: ### Consultando Dados de Dividendos ```bash curl "https://brapi.dev/api/quote/ITUB4?modules=dividendsData" ``` **Resposta com histórico de dividendos:** ```json { "results": [{ "symbol": "ITUB4", "dividendsData": { "dividends": [ { "date": "2023-12-15", "dividend": 0.35 }, { "date": "2023-09-15", "dividend": 0.30 } // ... mais dividendos ] } }] } ``` ### Implementação da Fórmula ```javascript function calcularPrecoTetoBazin(dividendosAnuais) { const yieldMinimo = 0.06; // 6% return dividendosAnuais / yieldMinimo; } // Exemplo com dados da API async function analiseBazin(ticker) { const response = await fetch(`https://brapi.dev/api/quote/${ticker}?modules=dividendsData,defaultKeyStatistics`); const data = await response.json(); const dividendosUltimos12Meses = data.results[0].defaultKeyStatistics.trailingAnnualDividendRate; const precoAtual = data.results[0].regularMarketPrice; const precoTeto = calcularPrecoTetoBazin(dividendosUltimos12Meses); const yieldAtual = (dividendosUltimos12Meses / precoAtual) * 100; return { ticker, precoAtual, precoTeto, yieldAtual, recomendacao: yieldAtual >= 6 ? 'COMPRAR' : 'AGUARDAR' }; } ``` ## Setores Favoráveis ao Método Bazin ### 1. Bancos **Características:** * Dividendos obrigatórios por lei * Negócio recorrente * Yields tradicionalmente altos **Exemplos:** ITUB4, BBDC4, BBAS3, SANB11 ### 2. Utilities (Energia e Saneamento) **Características:** * Concessões de longo prazo * Fluxo de caixa previsível * Necessidade básica **Exemplos:** EGIE3, SBSP3, CPLE6, TAEE11 ### 3. Seguradoras **Características:** * Modelo de negócio estável * Float insurance * Dividendos consistentes **Exemplos:** BBSE3, SULA11, PSSA3 ### 4. Telecomunicações **Características:** * Infraestrutura consolidada * Receita recorrente * Mercado maduro **Exemplos:** VIVT3, TIMS3 ## Implementando o Screening Bazin ### Critérios de Filtragem ```python def screening_bazin(lista_acoes): acoes_aprovadas = [] for ticker in lista_acoes: dados = obter_dados_brapi(ticker) # Critério 1: DY >= 6% dy = dados['dividend_yield'] if dy < 0.06: continue # Critério 2: Histórico de dividendos historico = dados['dividends_history'] if len(historico) < 5: continue # Critério 3: Crescimento dos dividendos crescimento = calcular_crescimento_dividendos(historico) if crescimento < 0: # Corte nos dividendos continue # Critério 4: Solidez financeira endividamento = dados['debt_to_equity'] if endividamento > 1.0: # Endividamento alto continue acoes_aprovadas.append({ 'ticker': ticker, 'dy': dy, 'preco_teto': dados['dividends_ttm'] / 0.06, 'preco_atual': dados['price'] }) return acoes_aprovadas ``` ### Monitoramento Automático ```javascript // Monitoramento diário de oportunidades Bazin const monitorarOportunidades = async () => { const watchlist = ['ITUB4', 'BBDC4', 'EGIE3', 'SBSP3', 'BBSE3']; for (const ticker of watchlist) { const analise = await analiseBazin(ticker); if (analise.yieldAtual >= 6) { console.log(`🎯 ${ticker}: Yield ${analise.yieldAtual.toFixed(2)}% - OPORTUNIDADE!`); // Enviar alerta por email/telegram enviarAlerta(analise); } } }; // Executar diariamente setInterval(monitorarOportunidades, 24 * 60 * 60 * 1000); ``` ## Construindo uma Carteira Bazin ### Diversificação Setorial ``` 📊 Distribuição Recomendada: - 40% Bancos - 30% Utilities - 15% Seguradoras - 10% Telecomunicações - 5% Outros setores ``` ### Critérios de Entrada 1. **DY ≥ 6%** no momento da compra 2. **Preço ≤ Preço Teto** calculado 3. **Histórico positivo** de dividendos (mín. 5 anos) 4. **Solidez financeira** comprovada ### Critérios de Saída 1. **DY \< 4%** por mais de 6 meses 2. **Corte significativo** nos dividendos (acima de 30%) 3. **Deterioração** dos fundamentos 4. **Mudança estratégica** da empresa ## Vantagens do Método Bazin ### 1. Renda Passiva Previsível * Dividendos proporcionam fluxo de caixa regular * Menor dependência da valorização das ações * Proteção contra volatilidade do mercado ### 2. Simplicidade * Critérios objetivos e fáceis de aplicar * Não requer análises complexas * Adequado para investidores iniciantes ### 3. Foco no Longo Prazo * Estratégia de buy and hold * Compounding dos dividendos * Reinvestimento automático ### 4. Proteção contra Inflação * Dividendos tendem a crescer com a inflação * Empresas reais com preços reais * Hedge natural contra desvalorização monetária ## Limitações e Riscos ### 1. Yield Traps **O que são:** Ações com DY alto devido a problemas fundamentais **Como evitar:** * Analisar a sustentabilidade dos dividendos * Verificar o payout ratio * Acompanhar a saúde financeira ### 2. Concentração Setorial * Método favorece setores específicos * Exposição a riscos regulatórios * Dependência de ciclos econômicos ### 3. Oportunidade de Custo * Pode perder crescimento de outros setores * Foco apenas em renda, não em valorização * Empresas de crescimento não se encaixam ### 4. Ambiente Macroeconômico * Juros altos competem com dividendos * Recessões podem afetar pagamentos * Mudanças regulatórias impactam setores ## Ferramentas de Análise ### Dashboard de Monitoramento Crie um dashboard usando dados da brapi.dev: ```typescript const DashboardBazin = () => { const [oportunidades, setOportunidades] = useState([]); useEffect(() => { const buscarOportunidades = async () => { const tickers = ['ITUB4', 'BBDC4', 'EGIE3']; const resultados = []; for (const ticker of tickers) { const analise = await analiseBazin(ticker); if (analise.yieldAtual >= 6) { resultados.push(analise); } } setOportunidades(resultados); }; buscarOportunidades(); }, []); return ( ); }; ``` ### Calculadora Automática ```htmlOportunidades Método Bazin
{oportunidades.map(opp => ())}{opp.ticker}
Yield: {opp.yieldAtual.toFixed(2)}%
Preço: R$ {opp.precoAtual.toFixed(2)}
Teto: R$ {opp.precoTeto.toFixed(2)}
Calculadora Método Bazin Calculadora Preço Teto - Método Bazin
``` ## Casos Práticos ### Exemplo 1: Banco Consolidado **ITUB4 - Itaú Unibanco** * Dividendos TTM: R$ 1,50 * Preço atual: R$ 25,00 * DY atual: 6,0% * Preço teto Bazin: R$ 25,00 * **Situação:** Na faixa de compra ### Exemplo 2: Utility Sólida **EGIE3 - Engie Brasil** * Dividendos TTM: R$ 2,80 * Preço atual: R$ 40,00 * DY atual: 7,0% * Preço teto Bazin: R$ 46,67 * **Situação:** Oportunidade de compra ## Acompanhamento e Evolução ### Métricas de Acompanhamento 1. **Yield médio da carteira** 2. **Crescimento dos dividendos** 3. **Payout ratio médio** 4. **Renda passiva mensal** ### Rebalanceamento * **Trimestral:** Verificar critérios de cada posição * **Anual:** Reavaliar alocação setorial * **Oportunidades:** Aproveitar quedas para aumentar posições ## Conclusão O Método Bazin é uma estratégia sólida para investidores que priorizam renda passiva e estabilidade. Embora possa limitar o potencial de crescimento, oferece previsibilidade e proteção em mercados voláteis. ### Pontos-Chave: 1. **Foco em renda passiva** com yield mínimo de 6% 2. **Critérios objetivos** de seleção 3. **Empresas maduras** e consolidadas 4. **Estratégia de longo prazo** ### Próximos Passos: * Explore nossa [API de dividendos](/docs/acoes) * Use nossa [plataforma](/quotes) para screening * Combine com [análise fundamentalista](/blog/analise-fundamentalista-acoes-indicadores-essenciais-investir-b3) * Aprenda sobre [análise P/VP](/blog/como-usar-indicador-pvp-valor-patrimonial-analise-acoes) para validação **Lembre-se:** O Método Bazin é uma ferramenta, não uma garantia. Sempre faça sua própria análise e diversifique adequadamente seus investimentos. # Novos Módulos brapi 2025: Fluxo de Caixa, DVA e Detalhes Trimestrais URL: /blog/novos-modulos-fluxo-de-caixa-dva.mdx Amplie sua análise financeira com os novos módulos da brapi! Fluxo de Caixa, DVA e históricos trimestrais detalhados para análises mais profundas e precisas ✓ *** searchable: true title: 'Novos Módulos brapi 2025: Fluxo de Caixa, DVA e Detalhes Trimestrais' description: 'Amplie sua análise financeira com os novos módulos da brapi! Fluxo de Caixa, DVA e históricos trimestrais detalhados para análises mais profundas e precisas ✓' date: '2025-06-01' keywords: 'novos módulos brapi, fluxo de caixa API, DVA demonstração valor adicionado, dados trimestrais, API brapi atualização, módulos análise financeira' author: 'Equipe brapi.dev' category: 'API e Desenvolvimento' subcategory: 'Novos Módulos' readingTime: '8 min' tags: \['Novos Módulos', 'Fluxo de Caixa', 'DVA', 'Dados Trimestrais', 'API brapi', 'Atualização', 'Análise Financeira', 'Desenvolvimento'] relatedPosts: \['analise-financeira-com-modulo-balance-sheet-history', 'como-usar-api-brapi-analise-acoes-guia-completo-desenvolvedores', 'demonstrativos-financeiros-um-olhar-detalhado-na-saude-financeira-da-empresa'] featured: false expertise: 'Equipe técnica da brapi.dev especializada em desenvolvimento de módulos e estruturação de dados financeiros' lastReviewed: '2025-06-01' -------------------------- import { Authors, Author } from '~/components/Authors'; > O time da brapi não para! Após a recente modernização que trouxe Balanços > Patrimoniais, Demonstrações de Resultados e Principais Estatísticas, temos o > prazer de anunciar uma nova leva de módulos para aprofundar ainda mais suas > análises. Esta atualização é focada em dados cruciais para entender a > liquidez, a geração e distribuição de valor, e a evolução financeira das > empresas em uma granularidade sem precedentes.## Por onde começar? Para começar a explorar os novos módulos, basta acessar a documentação da API através do link abaixo: [Documentação da API](https://brapi.dev/docs/acoes) Mas para os mais apressados, vamos dar uma olhada em alguns exemplos de como utilizar os novos módulos nos próximos tópicos. *** ## Quais são as novidades? A API da brapi agora conta com 6 novos módulos (ou aprimoramentos de módulos existentes com granularidade trimestral) que oferecem informações financeiras ainda mais detalhadas sobre as empresas. Esses módulos são: * [Demonstração de Fluxo de Caixa Histórico (cashflowHistory)](#demonstração-de-fluxo-de-caixa-histórico-cashflowhistory) * [Demonstração do Valor Adicionado Histórico (valueAddedHistory)](#demonstração-do-valor-adicionado-histórico-valueaddedhistory) * [Dados Financeiros Históricos Trimestrais (financialDataHistoryQuarterly)](#dados-financeiros-históricos-trimestrais-financialdatahistoryquarterly) * [Principais Estatísticas Históricas Trimestrais (defaultKeyStatisticsHistoryQuarterly)](#principais-estatísticas-históricas-trimestrais-defaultkeystatisticshistoryquarterly) ### Demonstração de Fluxo de Caixa Histórico (cashflowHistory) A Demonstração de Fluxo de Caixa é um dos pilares da análise financeira, mostrando como uma empresa gera e usa seu dinheiro em atividades operacionais, de investimento e de financiamento. Entender a DFC é crucial para avaliar a liquidez e a saúde financeira real de uma companhia, indo além do lucro contábil. Com este módulo, você pode acompanhar a capacidade da empresa de gerar caixa e gerenciar seus recursos. * Exemplo de requisição para dados **anuais**: ```sh GET https://brapi.dev/api/quote/PETR4?token=SEU_TOKEN&modules=cashflowHistory ``` Para obter dados **trimestrais**, basta utilizar o módulo `cashflowHistoryQuarterly`: ```sh GET https://brapi.dev/api/quote/PETR4?token=SEU_TOKEN&modules=cashflowHistoryQuarterly ``` *Exemplo (dados simplificados):* ```json { "cashflowHistory": { "cashflowHistory": [ { "type": "yearly", "endDate": "2022-12-31T00:00:00.000Z", // Data de Encerramento "operatingCashFlow": 225613004800, // Fluxo de Caixa das Atividades Operacionais (FCO) "investmentCashFlow": -132009000000, // Fluxo de Caixa das Atividades de Investimento (FCI) "financingCashFlow": -152340000000, // Fluxo de Caixa das Atividades de Financiamento (FCF) "increaseOrDecreaseInCash": -58736000000, // Aumento ou Redução Líquida de Caixa "initialCashBalance": 100459000000, // Saldo Inicial de Caixa "finalCashBalance": 41723000000, // Saldo Final de Caixa "updatedAt": "2023-11-21T00:00:00.000Z" } // + outros anos ou trimestres se for quarterly ] } } ``` *** ### Demonstração do Valor Adicionado Histórico (valueAddedHistory) A Demonstração do Valor Adicionado é um demonstrativo contábil que mostra a riqueza criada pela empresa e como essa riqueza é distribuída entre as partes interessadas: empregados (salários), governo (impostos), credores (juros), e acionistas (dividendos/lucros retidos). Essencial para análises de responsabilidade social e contribuição econômica da empresa. * Exemplo de requisição para dados **anuais**: ```sh GET https://brapi.dev/api/quote/PETR4?token=SEU_TOKEN&modules=valueAddedHistory ``` Para obter dados **trimestrais**, basta utilizar o módulo `valueAddedHistoryQuarterly`: ```sh GET https://brapi.dev/api/quote/PETR4?token=SEU_TOKEN&modules=valueAddedHistoryQuarterly ``` *Exemplo (dados simplificados):* ```json { "valueAddedHistory": { "valueAddedHistory": [ { "type": "yearly", "endDate": "2022-12-31T00:00:00.000Z", // Data de Encerramento "revenue": 641256000000, // Receitas "suppliesPurchasedFromThirdParties": 307156000000, // Insumos Adquiridos de Terceiros "grossAddedValue": 334100000000, // Valor Adicionado Bruto "retentions": 4087000000, // Retenções (Depreciação, Amortização, etc.) "netAddedValue": 330013000000, // Valor Adicionado Líquido Produzido "addedValueReceivedByTransfer": 28530000000, // Valor Adicionado Recebido em Transferência "addedValueToDistribute": 358543000000, // Valor Adicionado Total a Distribuir "distributionOfAddedValue": 358543000000, // Distribuição do Valor Adicionado "teamRemuneration": 15000000000, // Pessoal e Encargos "taxes": 85993000000, // Impostos, Taxas e Contribuições "remunerationOfThirdPartyCapitals": 13790000000, // Remuneração de Capitais de Terceiros "equityRemuneration": 243760000000, // Remuneração de Capitais Próprios (JCP, Dividendos, Lucros Retidos) "updatedAt": "2023-11-21T00:00:00.000Z" } // + outros anos ou trimestres se for quarterly ] } } ``` *** ### Dados Financeiros Históricos Trimestrais (financialDataHistoryQuarterly) Enquanto o módulo `financialData` já oferece dados financeiros importantes (como margens, EBITDA, dívida líquida, e fluxos de caixa) em base TTM (Trailing Twelve Months), a introdução do `financialDataHistoryQuarterly` permite que você acesse essas mesmas métricas em um histórico **trimestral**. Isso é fundamental para acompanhar tendências de curto prazo, identificar viradas e a performance da empresa de forma mais ágil e detalhada. * Exemplo de requisição para dados **trimestrais**: ```sh GET https://brapi.dev/api/quote/PETR4?token=SEU_TOKEN&modules=financialDataHistoryQuarterly ``` *Exemplo (dados simplificados):* ```json { "financialDataHistoryQuarterly": { "financialDataHistoryQuarterly": [ { "type": "quarterly", "endDate": "2023-09-30T00:00:00.000Z", // Fim do Trimestre "totalRevenue": 105807000000, // Receita Total do Trimestre "profitMargins": 0.22, // Margem de Lucro Trimestral "ebitda": 56000000000, // EBITDA Trimestral "returnOnEquity": 0.08, // Retorno sobre Patrimônio Líquido Trimestral "revenueGrowth": -0.09, // Crescimento da Receita (YoY Trimestral) "operatingCashflow": 60000000000, // Fluxo de Caixa Operacional Trimestral "financialCurrency": "BRL", "updatedAt": "2023-12-10T00:00:00.000Z" } // + outros trimestres ] } } ``` *** ### Principais Estatísticas Históricas Trimestrais (defaultKeyStatisticsHistoryQuarterly) Da mesma forma que os dados financeiros, o `defaultKeyStatisticsHistoryQuarterly` traz a granularidade trimestral para as principais estatísticas. Agora você pode analisar a evolução de indicadores cruciais como P/L (Preço/Lucro), P/VP (Preço/Valor Patrimonial), ROE (Retorno sobre Patrimônio Líquido) e o crescimento dos lucros trimestralmente. Isso permite uma visão mais dinâmica da valoração, rentabilidade e eficiência da empresa, com dados mais recentes para embasar suas decisões. * Exemplo de requisição para dados **trimestrais**: ```sh GET https://brapi.dev/api/quote/PETR4?token=SEU_TOKEN&modules=defaultKeyStatisticsHistoryQuarterly ``` *Exemplo (dados simplificados):* ```json { "defaultKeyStatisticsHistoryQuarterly": { "defaultKeyStatisticsHistoryQuarterly": [ { "type": "quarterly", "endDate": "2023-09-30T00:00:00.000Z", // Fim do Trimestre "forwardPE": 4.39, // P/L Projetado "profitMargins": 0.25527, // Margem de Lucro "sharesOutstanding": 5545639936, // Ações em Circulação "bookValue": 29.658, // Valor Patrimonial por Ação (VPA) "priceToBook": 1.1892238, // Preço/VPA "earningsQuarterlyGrowth": -0.422, // Crescimento dos Lucros Trimestrais (YoY) "trailingEps": 10.13, // Lucro por Ação (TTM) "enterpriseToRevenue": 1.303, // EV/Receita (TTM) "lastDividendValue": 1.345348, // Último Dividendo Pago "updatedAt": "2023-12-10T00:00:00.000Z" } // + outros trimestres ] } } ``` *** ## Conclusão Com a adição dos módulos de **Fluxo de Caixa** e **Demonstração do Valor Adicionado**, somados à granularidade **trimestral** para dados financeiros e estatísticas-chave, a API da brapi se consolida como uma ferramenta indispensável para quem busca uma análise financeira realmente profunda e atualizada. Essas novidades capacitam desenvolvedores, analistas e investidores a entender não apenas "quanto" uma empresa lucra, mas "como" ela gera e utiliza seu caixa, e "como" a riqueza que ela cria é distribuída. Isso permite modelagens mais sofisticadas, backtests mais precisos e, o mais importante, decisões de investimento mais informadas e estratégicas. Não perca tempo e comece a explorar as novidades agora mesmo para levar suas análises a um novo patamar! *Observação: Certifique-se de utilizar o token apropriado ao realizar suas consultas.* *** **Esperamos que essas adições enriqueçam ainda mais suas análises!** # Novos Módulos brapi: Balanços, Demonstrativos e Estatísticas Avançadas URL: /blog/novos-modulos-na-brapi.mdx Descubra os novos módulos da API brapi! Balanços patrimoniais, demonstrativos de resultados e estatísticas para análises financeiras mais completas e precisas ✓ *** searchable: true title: 'Novos Módulos brapi: Balanços, Demonstrativos e Estatísticas Avançadas' description: 'Descubra os novos módulos da API brapi! Balanços patrimoniais, demonstrativos de resultados e estatísticas para análises financeiras mais completas e precisas ✓' date: '2025-08-22' keywords: 'módulos brapi API, balanços patrimoniais, demonstrativos resultados, estatísticas financeiras, API atualização, dados empresariais, análise fundamentalista' author: 'Equipe brapi.dev' category: 'API e Desenvolvimento' subcategory: 'Módulos Core' readingTime: '10 min' tags: \['Módulos brapi', 'Balanços', 'Demonstrativos', 'Estatísticas', 'API', 'Dados Financeiros', 'Atualização', 'Análise'] relatedPosts: \['novos-modulos-fluxo-de-caixa-dva', 'analise-financeira-com-modulo-balance-sheet-history', 'como-usar-api-brapi-analise-acoes-guia-completo-desenvolvedores'] featured: false expertise: 'Equipe técnica da brapi.dev com foco em desenvolvimento de módulos fundamentais e estruturação de dados' lastReviewed: '2025-08-22' -------------------------- import { Authors, Author } from '~/components/Authors'; # Novos módulos na brapi: Balanços Patrimoniais, Demonstrativos de Resultados, Principais Estatísticas e muito mais! > O time da brapi tem o prazer de revelar a mais recente modernização da sua > API, introduzindo novos módulos que fornecem insights valiosos sobre várias > empresas. Estas adições inovadoras proporcionam uma visão abrangente, que se > estende desde o perfil sumário da empresa até dados financeiros fundamentais. > Vamos mergulhar nas fascinantes novidades! *** ## Por onde começar? Para começar a explorar os novos módulos, basta acessar a documentação da API através do link abaixo: [Documentação da API](https://brapi.dev/docs/acoes#modules-opcional) Mas para os mais apressados, vamos dar uma olhada em alguns exemplos de como utilizar os novos módulos nos próximos tópicos. *** ## Quais são as novidades? A API da brapi agora conta com 5 novos módulos, que oferecem informações detalhadas sobre as empresas. Esses módulos são: * [Resumo da Empresa (summaryProfile)](#resumo-da-empresa-summaryprofile) * [Balanço Patrimonial Histórico (balanceSheetHistory)](#balanço-patrimonial-histórico-balancesheethistory) * [Principais Estatísticas da Empresa (defaultKeyStatistics)](#principais-estatísticas-da-empresa-defaultkeystatistics) * [Demonstrativo de Resultados Histórico (incomeStatementHistory)](#demonstrativo-de-resultados-histórico-incomestatementhistory) * [Dados Financeiros (financialData)](#dados-financeiros-financialdata) ### Resumo da Empresa (summaryProfile) O módulo *summaryProfile* oferece uma visão abrangente da empresa, incluindo informações vitais sobre sua sede, setor, número de funcionários e muito mais. Com esta adição útil, os usuários podem obter uma compreensão rápida e detalhada da empresa que estão analisando. * Exemplo de requisição: ```sh GET https://brapi.dev/api/quote/PETR4?token=SEU_TOKEN&modules=summaryProfile ``` *Exemplo:* ```json { "address1": "Avenida RepUblica do Chile, 65", // Endereço "address2": "Centro", // Endereço "city": "Rio De Janeiro", // Cidade "state": "RJ", // Estado "zip": "20031-912", // CEP "country": "Brazil", // País "phone": "55 21 96940 2116", // Telefone "website": "https://petrobras.com.br", // Website "industry": "Oil & Gas Integrated", // Indústria "industryKey": "oil-gas-integrated", // Indústria "industryDisp": "Oil & Gas Integrated", // Indústria "sector": "Energy", // Setor "sectorKey": "energy", // Setor "sectorDisp": "Energy", // Setor "longBusinessSummary": "Petróleo Brasileiro S.A. - Petrobras explores, produces, and sells oil and gas in Brazil and internationally. The company operates through Exploration and Production; Refining, Transportation and Marketing; and Gas and Power. It also engages in prospecting, drilling, refining, processing, trading, and transporting crude oil from producing onshore and offshore oil fields, and shale or other rocks, as well as oil products, natural gas, and other liquid hydrocarbons. The Exploration and Production segment explores, develops, and produces crude oil, natural gas liquids, and natural gas primarily for supplies to the domestic refineries. The Refining, Transportation and Marketing segment engages in the refining, logistics, transport, marketing, and trading of crude oil and oil products; exportation of ethanol; and extraction and processing of shale, as well as holding interests in petrochemical companies. The Gas and Power segment is involved in the logistic and trading of natural gas and electricity; transportation and trading of LNG; generation of electricity through thermoelectric power plants; holding interests in transportation and distribution of natural gas; and fertilizer production and natural gas processing business. In addition, the company produces biodiesel and its co-products, and ethanol; and distributes oil products. Further, it engages in research, development, production, transport, distribution, and trading of energy. Petróleo Brasileiro S.A. - Petrobras was incorporated in 1953 and is headquartered in Rio de Janeiro, Brazil.", // Descrição da empresa "fullTimeEmployees": 45149, // Número de funcionários "companyOfficers": [] // Diretores } ``` *** ### Balanço Patrimonial Histórico (balanceSheetHistory) O módulo *balanceSheetHistory* permite uma análise minuciosa dos ativos, passivos e patrimônio líquido da empresa em um determinado período. Estes dados são fundamentais para avaliar a saúde financeira da empresa ao longo do tempo. [Ler mais sobre o Balanço Patrimonial](/blog/analise-financeira-com-modulo-balance-sheet-history) * Exemplo de requisição: ```sh GET https://brapi.dev/api/quote/PETR4?token=SEU_TOKEN&modules=balanceSheetHistory ``` Para obter dados trimestrais, basta utilizar o módulo *balanceSheetHistoryQuarterly*: ```sh GET https://brapi.dev/api/quote/PETR4?token=SEU_TOKEN&modules=balanceSheetHistoryQuarterly ``` *Exemplo:* ```json { ... "balanceSheetHistory": { "balanceSheetStatements": [ { "endDate": "2022-12-31T00:00:00.000Z", // Data de Encerramento "cash": 41723000000, // Caixa e Equivalentes de Caixa "shortTermInvestments": 14470000000, // Aplicações Financeiras "netReceivables": 32961000000, // Contas a Receber "inventory": 45804000000, // Estoques "otherCurrentAssets": 28094000000, // Outros Ativos Circulantes "totalCurrentAssets": 163052000000, // Ativo Circulante "longTermInvestments": 16331000000, // Investimentos a Longo Prazo "propertyPlantEquipment": 679182000000, // Imobilizado "goodWill": 123000000, // Goodwill "intangibleAssets": 15458000000, // Ativos Intangíveis "otherAssets": 102563000000, // Outros Ativos "deferredLongTermAssetCharges": 4342000000, // Encargos de Ativos Diferidos a Longo Prazo "totalAssets": 976709000000, // Ativo Total "accountsPayable": 28507000000, // Contas a Pagar "shortLongTermDebt": 18656000000, // Dívida de Curto e Longo Prazo "otherCurrentLiab": 60989000000, // Outras Obrigações Correntes "longTermDebt": 137630000000, // Dívida de Longo Prazo "otherLiab": 215540000000, // Outras Obrigações "minorityInterest": 1791000000, // Interesse Minoritário "totalCurrentLiabilities": 163731000000, // Passivo Circulante "totalLiab": 612324000000, // Passivo Total "commonStock": 205432000000, // Ações Ordinárias "retainedEarnings": 128562000000, // Lucros Retidos "treasuryStock": 28600000000, // Ações em Tesouraria "otherStockholderEquity": 28600000000, // Outros Patrimônios de Acionistas "totalStockholderEquity": 362594000000, // Patrimônio Líquido Total "netTangibleAssets": 347013000000 // Ativos Tangíveis Líquidos } // + outros anos ou trimestres ] } } ``` *** ### Principais Estatísticas da Empresa (defaultKeyStatistics) O módulo *defaultKeyStatistics* oferece uma visão aprofundada das principais estatísticas da empresa, desde o valor da empresa até o crescimento dos ganhos. Esses dados são cruciais para investidores que desejam tomar decisões informadas. * Exemplo de requisição: ```sh GET https://brapi.dev/api/quote/PETR4?token=SEU_TOKEN&modules=defaultKeyStatistics ``` *Exemplo:* ```json { ... "defaultKeyStatistics": { "priceHint": 2, "enterpriseValue": 698842480640, // Valor da empresa "forwardPE": 4.3977556, // Preço da ação / Lucro por ação "profitMargins": 0.25527, // Lucro líquido / Receita "floatShares": 8239310319, // Ações em circulação "sharesOutstanding": 5545639936, // Ações em circulação "heldPercentInsiders": 0.16073, // Porcentagem de ações em posse de insiders "heldPercentInstitutions": 0.35612, // Porcentagem de ações em posse de instituições "beta": 1.088, // Mede a volatilidade da ação em relação ao mercado "impliedSharesOutstanding": 13511199744, // Ações em circulação "category": null, // categoria "bookValue": 29.658, // VPA - Valor Patrimonial por Ação "priceToBook": 1.1892238, // Preço da ação / Valor patrimonial por ação (P/VPA) "fundFamily": null, // Fundo "legalType": null, // Tipo legal "lastFiscalYearEnd": "2022-12-31T00:00:00.000Z", // Último ano fiscal "nextFiscalYearEnd": "2023-12-31T00:00:00.000Z", // Próximo ano fiscal "mostRecentQuarter": "2023-09-30T00:00:00.000Z", // Último trimestre "earningsQuarterlyGrowth": -0.422, // Crescimento dos lucros trimestrais "netIncomeToCommon": 136903999488, // Lucro líquido "trailingEps": 10.13, // Lucro por ação dos últimos 12 meses "forwardEps": 8.02, // Lucro por ação estimado para os próximos 12 meses "pegRatio": -0.6, // Preço da ação / Lucro por ação / Crescimento dos lucros "lastSplitFactor": "2:1", // Split "lastSplitDate": 1209340800, // Data do split "enterpriseToRevenue": 1.303, // Valor da empresa / Receita "enterpriseToEbitda": 2.636, // Valor da empresa / EBITDA "52WeekChange": 0.44786537, // Variação da ação nos últimos 52 semanas "SandP52WeekChange": 0.15020406, "lastDividendValue": 1.345348, // Dividendos pagos "lastDividendDate": "2023-11-22T00:00:00.000Z" // Data do último pagamento de dividendos } } ``` *** ### Demonstrativo de Resultados Histórico (incomeStatementHistory) Com o módulo *incomeStatementHistory*, é possível analisar detalhadamente receitas e despesas ao longo do tempo, proporcionando insights valiosos sobre o desempenho financeiro da empresa. * Exemplo de requisição: ```sh GET https://brapi.dev/api/quote/PETR4?token=SEU_TOKEN&modules=incomeStatementHistory ``` *Exemplo:* ```json { ... "incomeStatementHistory": { "incomeStatementHistory": [ { "endDate": "2022-12-31T00:00:00.000Z", // Data de encerramento "totalRevenue": 641256000000, // Receita de Venda de Bens e/ou Serviços "costOfRevenue": 307156000000, // Custo dos Bens e/ou Serviços Vendidos "grossProfit": 334100000000, // Resultado Bruto "researchDevelopment": 4087000000, // Custos com pesquisa e desenvolvimento tecnológico "sellingGeneralAdministrative": 32325000000, // Despesas Gerais e Administrativas "nonRecurring": null, // Perdas pela Não Recuperabilidade de Ativos "otherOperatingExpenses": -10922000000, // Outras Despesas Operacionais "totalOperatingExpenses": 337728000000, // Despesas/Receitas Operacionais "operatingIncome": 303528000000, // Resultado Antes do Resultado Financeiro e dos Tributos "totalOtherIncomeExpenseNet": -28530000000, // Resultado Financeiro "ebit": 303528000000, // Resultado Antes dos Tributos sobre o Lucro (EBIT - Earnigs Before Interest and Taxes) "interestExpense": -13790000000, // Despesas Financeiras "incomeBeforeTax": 274998000000, // Resultado Antes dos Tributos sobre o Lucro "incomeTaxExpense": 85993000000, // Imposto de Renda e Contribuição Social sobre o Lucro "minorityInterest": 1791000000, // Participação de acionistas minoritários "netIncomeFromContinuingOps": 189005000000, // Resultado Líquido das Operações Continuadas "discontinuedOperations": null, // Resultado Líquido de Operações Descontinuadas "extraordinaryItems": null, // Itens Extraordinários "effectOfAccountingCharges": null, // Efeito das Mudanças nas Contas "otherItems": null, // Outros itens "netIncome": 188328000000, // Lucro/Prejuízo do Período (Lucro líquido) "netIncomeApplicableToCommonShares": 188328000000 // Lucro/Prejuízo do Período Atribuído a Sócios da Empresa Controladora } // + outros anos ou trimestres ] } } ``` *** ### Dados Financeiros (financialData) Por fim, o módulo *financialData* fornece dados financeiros essenciais, incluindo preço atual, lucro por ação, crescimento de receita e muito mais. Essas informações são cruciais para avaliar o desempenho financeiro atual da empresa. * Exemplo de requisição: ```sh GET https://brapi.dev/api/quote/PETR4?token=SEU_TOKEN&modules=financialData ``` *Exemplo:* ```json { "financialData": { "currentPrice": 35.27, // Preço atual "targetHighPrice": 49, // Preço alvo alto "targetLowPrice": 26, // Preço alvo baixo "targetMeanPrice": 38.5, // Preço alvo médio "targetMedianPrice": 38.5, // Preço alvo mediano "recommendationMean": 2.5, // Recomendação média "recommendationKey": "buy", // Recomendação "numberOfAnalystOpinions": 12, // Número de opiniões de analistas "totalCash": 67147001856, // Caixa total "totalCashPerShare": 5.159, // Caixa total por ação "ebitda": 265149005824, // EBITDA - Earnings Before Interest, Taxes, Depreciation and Amortization (Lucro antes de juros, impostos, depreciação e amortização) "totalDebt": 305451008000, // Dívida total "quickRatio": 0.638, // Liquidez imediata "currentRatio": 0.953, // Liquidez corrente "totalRevenue": 536315002880, // Receita total "debtToEquity": 78.828, // Dívida / Patrimônio líquido "revenuePerShare": 41.123, // Receita por ação "returnOnAssets": 0.13949001, // Retorno sobre ativos "returnOnEquity": 0.36110002, // Retorno sobre patrimônio líquido "grossProfits": 334100000000, // Lucro bruto "freeCashflow": 191622742016, // Fluxo de caixa livre "operatingCashflow": 225613004800, // Fluxo de caixa operacional "earningsGrowth": -0.422, // Crescimento dos lucros "revenueGrowth": -0.266, // Crescimento da receita "grossMargins": 0.51079, // Margem bruta "ebitdaMargins": 0.49438998, // Margem EBITDA "operatingMargins": 0.40989, // Margem operacional "profitMargins": 0.25527, // Margem de lucro "financialCurrency": "BRL" // Moeda } } ``` *** ## Conclusão Com esses novos módulos, a API da brapi capacita os desenvolvedores, pesquisadores e investidores a explorarem informações detalhadas sobre empresas, permitindo análises mais aprofundadas e decisões mais informadas. Não perca tempo e comece a explorar as novidades agora mesmo! *Observação: Certifique-se de utilizar o token apropriado ao realizar suas consultas.* *** **Esperamos que essas adições enriqueçam ainda mais suas análises!** # Códigos de Ações B3 2025: PETR4, VALE3, MGLU3 e Como Funciona o Sistema de Tickers URL: /blog/o-que-e-petr4-e-mglu-outros-tickers-da-bolsa-de-valores.mdx Aprenda como funcionam os códigos de ações na B3! Entenda PETR4, VALE3, MGLU3 e o sistema de tickers brasileiro. Guia completo para iniciantes em investimentos ✓ *** searchable: true title: 'Códigos de Ações B3 2025: PETR4, VALE3, MGLU3 e Como Funciona o Sistema de Tickers' description: 'Aprenda como funcionam os códigos de ações na B3! Entenda PETR4, VALE3, MGLU3 e o sistema de tickers brasileiro. Guia completo para iniciantes em investimentos ✓' date: '2025-08-22' keywords: 'códigos ações B3, tickers bolsa Brasil, PETR4 VALE3 MGLU3, sistema ticker brasileiro, como investir ações, bolsa valores códigos, iniciantes investimento' author: 'Equipe brapi.dev' category: 'Educação Financeira' subcategory: 'Tickers e Códigos' readingTime: '10 min' tags: \['Tickers', 'Códigos Ações', 'B3', 'PETR4', 'VALE3', 'MGLU3', 'Iniciantes', 'Educação Financeira'] relatedPosts: \['como-acompanhar-a-bolsa-de-valores-em-tempo-real', 'analise-fundamentalista-acoes-indicadores-essenciais-investir-b3', 'como-construir-carteira-investimentos-diversificada-brapi'] featured: false expertise: 'Equipe de educação financeira especializada em facilitar o aprendizado de investimentos para iniciantes' lastReviewed: '2025-08-22' -------------------------- import { Author, Authors } from '~/components/Authors'; # Investindo em Ações na Bolsa: Entenda os Códigos PETR4 e VALE3 > Descubra o significado dos códigos PETR4 e VALE3 na bolsa de valores, entenda > as diferenças entre a Petrobras e a Vale, e saiba como operar com sucesso. > Conheça os detalhes dos tickers e suas variações no mercado de ações > brasileiro. ## O que é um ticker de ações? Ações são representadas por códigos chamados de tickers, essenciais para operar na bolsa. Este artigo desmistifica os códigos PETR4 e VALE3, proporcionando uma compreensão profunda para os investidores iniciantes. ### O que é PETR4? O código PETR4 refere-se às ações da [Petrobras](https://brapi.dev/quote/PETR4), uma gigante estatal do setor petrolífero. Detentora de uma vasta gama de atividades, desde extração até distribuição, a Petrobras tem grande influência no índice IBovespa, impactando diretamente o mercado. ### O que é VALE3? Já o código VALE3 representa as ações da [Vale do Rio Doce](https://brapi.dev/quote/VALE3), uma das maiores mineradoras do mundo. Com produção diversificada, a Vale mantém uma forte correlação com o índice IBovespa, sendo crucial entender sua dinâmica para operações eficientes. ### O que significa o número 3 e 4 no código das ações? Os códigos das ações são compostos por 4 letras e números. No caso de ações ordinárias e preferenciais, como VALE3 e PETR4, é importante compreender a diferença. A correlação dessas ações com o índice IBovespa é crucial para investidores e traders. O número 3 e 4 no código das ações indica se a ação é ordinária ou preferencial. * Ações ordinárias: 3 * Ações preferenciais: 4 ### Qual é a diferença entre ações ordinárias e preferenciais? As ações ordinárias podem dar direito a voto nas assembleias, ou seja, o investidor pode participar das decisões da empresa. Já as ações preferenciais geralmente oferecem maiores dividendos, mas sem poder de voto. ### O que significa todos os números e letras no código das ações? | Código | Tipo de Ação | Descrição | | ------ | ---------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | | 1 | Direito de subscrição de uma ação ordinária | Tem o direito de aceitar ou não a subscrição de uma ação ordinária | | 2 | Direito de subscrição de uma ação preferencial | Tem o direito de aceitar ou não a subscrição de uma ação preferencial | | 3 | Ação Ordinária | Tem direito a voto nas assembleias | | 4 | Ação Preferencial | Tem preferência na distribuição de dividendos | | 5 | Ação Preferencial - Classe A (PNA) | Papel preferencial classe A | | 6 | Ação Preferencial - Classe B (PNB) | Papel preferencial classe B | | 7 | Ação Preferencial - Classe C (PNC) | Papel preferencial classe C | | 8 | Ação Preferencial - Classe D (PND) | Papel preferencial classe D | | 9 | Recibo de subscrição sobre ações ordinárias | Quando você exerce o direito de subscrição de uma ação ordinária, antes de ela entrar no seu portfólio com o código normal - PETR3, por exemplo - ela aparece como um recibo de subscrição, com o número 9 depois das letras - PETR9, por exemplo. Este recibo já pode ser negociado e tem o preço bem próximo ao da ação ordinária. | | 10 | Recibo de subscrição sobre ações preferenciais | Assim como o número 9, o 10 também se refere a um recibo de direitos sobre ações. A diferença é que são ações preferenciais, e não ordinárias. | | 11 | BDRs e Units | O mercado usa o número 11 para BDRs (Brazilian Deposit Receipts - Recibos de ações de empresas estrangeiras negociadas na bolsa brasileira) e para Units - papéis compostos por mais de um ativo, mas comprados e vendidos como uma unidade. Uma Unit pode ser composta por várias combinações de diferentes tipos de ações. Uma ação preferencial e duas ordinárias, 3 ordinárias e duas preferenciais, enfim, a empresa é quem define. O Santander, por exemplo, negocia Units no mercado acionário brasileiro, sob o código SANB11. | ## Decifrando os Códigos das Ações: Um Guia Detalhado ### Direito de Subscrição de uma Ação Ordinária (1) O número 1 nos códigos de ações indica o direito de subscrição de uma ação ordinária. Quando uma empresa decide aumentar seu capital, ela concede aos acionistas o direito de manter a mesma participação no capital da empresa. O investidor tem a opção de adquirir as novas ações a um preço predeterminado. Durante esse período, o código da ação no portfólio do acionista será complementado com o número 1, por exemplo, PETR1 para Petrobras. Caso o investidor opte por não exercer o direito de compra, o código desaparecerá ao final do prazo, mantendo a quantidade original de ações. Há também a possibilidade de vender esse direito a terceiros, exigindo que o comprador compreenda completamente a transação. Em algumas situações, o investidor pode observar uma ação, como a da Petrobras, sendo negociada a um preço substancialmente baixo, como R$ 1, e decidir adquirir. No entanto, nesse cenário, ele está comprando o direito de adquirir a ação por um preço determinado, por exemplo, comprando por R$ 1 o direito de adquirir uma ação da Petrobras por R$ 30. Ao final do período de subscrição, o investidor deve comprar a ação por R$ 30, caso contrário, perderá todo o capital investido no direito de subscrição. ### Direito de Subscrição de uma Ação Preferencial (2) O número 2 é utilizado para indicar o direito de subscrição, mas desta vez, de uma ação preferencial. Exemplificando, BBDC2 seria um direito de subscrição da ação preferencial do Bradesco (BBDC4). ### Ação Ordinária (3) O número 3 é frequentemente utilizado no mercado de ações para denotar uma ação ordinária, conferindo direito a voto. Um exemplo é o código USIM3, referindo-se à ação ordinária da Usiminas. ### Ação Preferencial (4) O número 4 é comum e refere-se a ações preferenciais, que possuem preferência na distribuição de dividendos. Como exemplo, temos o código PETR4, indicando os papéis preferenciais da Petrobras. ### Ações Preferenciais de Classes Diferentes (5, 6, 7 e 8) Quando o código é composto por esses números, significa que a ação é preferencial, mas de classes diferentes. O número 5 representa ação preferencial classe A (PNA), como VALE5. O número 6 indica ação preferencial classe B (PNB), o 7, classe C (PNC), e o 8, classe D (PND). Não há uma diferença específica entre as classes, sendo necessário consultar o estatuto da empresa para entender as características específicas de cada uma. ### Recibo de Subscrição sobre Ações Ordinárias (9) Quando o investidor exerce o direito de subscrição de uma ação ordinária, antes de ela entrar no portfólio com o código normal (por exemplo, PETR3), ela aparece como um recibo de subscrição, incluindo o número 9 depois das letras, como PETR9. Esse recibo já pode ser negociado e possui um preço bastante próximo ao da ação ordinária. ### Recibo de Subscrição sobre Ações Preferenciais (10) Assim como o número 9, o 10 refere-se a um recibo de direitos sobre ações, mas, neste caso, são ações preferenciais, não ordinárias. ### BDRs e Units (11) O número 11 não possui uma regra específica para o tipo de papel, sendo comumente utilizado para BDRs (Brazilian Deposit Receipts - recibos de ações de empresas estrangeiras negociadas na bolsa brasileira) e para Units - papéis compostos por mais de um ativo, mas comprados e vendidos como uma unidade. Empresas, como o Santander, negociam Units no mercado acionário brasileiro, sob o código SANB11. ### O que significa o PN e ON no nome das ações? (PETR3, PETR4, VALE3, VALE4) O PN e ON no nome das ações indica se a ação é preferencial ou ordinária. * Ações ordinárias: ON * Ações preferenciais: PN #### Ações Ordinárias e Preferenciais * **VALE3:** Ação ordinária da [Vale ON ](https://brapi.dev/quote/VALE3). * **VALE4:** Ação preferencial da [Vale PN](https://brapi.dev/quote/VALE4). * **PETR3:** Ação ordinária da [Petrobras ON](https://brapi.dev/quote/PETR3). * **PETR4:** Ação preferencial da [Petrobras PN](https://brapi.dev/quote/PETR4). ### Aprenda a Interpretar Outros Códigos de Ações Conhecer outros códigos do mercado é essencial para evitar confusões. Desde o mercado fracionário até opções e futuro, este guia completo proporciona uma visão abrangente. #### Mercado Fracionário O mercado fracionário, identificado por códigos como PETR4F, é ideal para investidores com recursos limitados, permitindo negociações em quantidades menores. #### Mercado de Opções O mercado de opções, representado por códigos como VALEK60, introduz o conceito de direito de compra ou venda de ativos em uma data futura, oferecendo uma estratégia alternativa para investidores. #### Mercado Futuro Os códigos, como PETRPM19, no mercado futuro indicam a opção de compra ou venda, sem obrigatoriedade. Compreender esses códigos é crucial para operações eficientes. #### Mercado a Termo Semelhante ao mercado futuro, o mercado a termo, com códigos como PETR4T, diferencia-se pela ausência de desembolsos antes do vencimento do contrato. ### Peso das Ações na Bolsa Entender a correlação e peso das ações como PETR4 e VALE3 no índice IBovespa é crucial para decisões informadas. Analisar essa relação é fundamental para investidores e traders. ## Perguntas Frequentes ### Qual é principal diferença entre ações ordinárias e preferenciais? As ações ordinárias podem dar direito a voto nas assembleias, ou seja, o investidor pode participar das decisões da empresa. Já as ações preferenciais geralmente oferecem maiores dividendos, mas sem poder de voto. ### Como interpretar os códigos do mercado de opções? Os códigos indicam a companhia, mês de vencimento e se é opção de compra (letras A-L) ou venda (letras M-X). ### O que é mercado fracionário? O mercado fracionário permite negociações em quantidades menores, identificadas por códigos com a letra F. É ideal para investidores com recursos limitados, que desejam comprar ações de empresas como a Petrobras e a Vale. O código PETR4F, por exemplo, representa ações fracionárias da Petrobras. Já o código [KLBN4F](https://brapi.dev/quote/KLBN4F) representa ações fracionárias da Klabin. ### O que é mercado futuro? O mercado futuro, identificado por códigos como PETRPM19, indica a opção de compra ou venda, sem obrigatoriedade. Compreender esses códigos é crucial para operações eficientes. O código PETRPM19, por exemplo, representa a opção de compra de ações da Petrobras com vencimento em junho de 2019. ### Como posso consultar cotações da Ibovespa Acesse a [brapi](https://brapi.dev/quotes) para consultar cotações de ações atualizadas. A visualização é simples e intuitiva, com suporte para diversos códigos, para quaisquer ações do Brasil, cotação de ações atualizadas, e muito mais. ## Próximos Passos Investir na bolsa requer compreensão dos códigos das ações, como PETR4 e VALE3. Este guia abrangente visa equipar investidores com o conhecimento necessário para operar com confiança e sucesso. Conheça a dinâmica dos tickers, explore diferentes mercados e tome decisões informadas em suas operações na bolsa. Precisa de uma API para consultar cotações de ações? Conheça a [brapi](https://brapi.dev), uma API gratuita para consultar cotações de ações atualizadas. Acesse a documentação e comece a usar agora mesmo! # ROE 2025: Como Usar Return on Equity para Avaliar Gestão de Empresas URL: /blog/roe-return-equity-como-avaliar-eficiencia-gestao-empresarial.mdx Domine o ROE (Return on Equity) para análise fundamentalista! Aprenda a calcular, interpretar e investir usando este indicador-chave de eficiência da gestão na B3. Guia completo com API ✓ *** searchable: true title: 'ROE 2025: Como Usar Return on Equity para Avaliar Gestão de Empresas' description: 'Domine o ROE (Return on Equity) para análise fundamentalista! Aprenda a calcular, interpretar e investir usando este indicador-chave de eficiência da gestão na B3. Guia completo com API ✓' date: '2025-08-22' keywords: 'ROE, return on equity, retorno sobre patrimônio líquido, análise fundamentalista, eficiência gestão, ações B3, rentabilidade, indicadores financeiros, brapi' author: 'Equipe brapi.dev' category: 'Análise Fundamentalista' subcategory: 'Indicadores de Rentabilidade' readingTime: '16 min' tags: \['ROE', 'Análise Fundamentalista', 'Gestão', 'Rentabilidade', 'B3', 'Value Investing', 'Eficiência', 'Indicadores'] relatedPosts: \['entendendo-indicador-preco-lucro-pl-analise-fundamentalista', 'como-calcular-o-roic-usando-a-api-da-brapi', 'analise-fundamentalista-acoes-indicadores-essenciais-investir-b3'] featured: true expertise: 'Análise de rentabilidade empresarial com 8+ anos de experiência no mercado brasileiro' lastReviewed: '2025-08-22' -------------------------- import { Authors, Author } from '~/components/Authors'; # ROE 2025: Como Usar Return on Equity para Avaliar Gestão de Empresas > O ROE (Return on Equity) é o indicador-chave para avaliar se a gestão da empresa está criando valor real para os acionistas. Aprenda como usar este múltiplo essencial para identificar empresas com gestão eficiente na B3 em 2025. *** ## O que é ROE e Por Que é Crucial para Investidores? **O ROE (Return on Equity) mede quantos reais de lucro a empresa gera para cada real de patrimônio líquido dos acionistas.** É o indicador mais direto da eficiência da gestão em criar valor com o dinheiro dos investidores. **Em termos práticos:** Um ROE de 20% significa que a empresa gera R$ 0,20 de lucro para cada R$ 1,00 do patrimônio dos acionistas. ### Por Que o ROE é Fundamental? 1. **Mede eficiência da gestão** diretamente 2. **Compara empresas** independente do setor 3. **Identifica** gestões criadoras de valor 4. **Prevê** potencial de crescimento sustentável 5. **Base** para estratégias de value investing ### Fórmula do ROE ``` ROE = Lucro Líquido ÷ Patrimônio Líquido × 100 ``` **Exemplo prático:** * Lucro líquido anual: R$ 500 milhões * Patrimônio líquido: R$ 2.500 milhões * ROE = (500 ÷ 2.500) × 100 = 20% Isso significa que a empresa gerou 20% de retorno sobre cada real investido pelos acionistas. ## Por que o ROE é Importante? ### 1. Eficiência da Gestão O ROE mostra quão eficientemente a gestão está utilizando o capital dos acionistas para gerar lucros. ### 2. Comparação entre Empresas Permite comparar a eficiência de diferentes empresas, especialmente dentro do mesmo setor. ### 3. Potencial de Crescimento Empresas com ROE alto e sustentável tendem a ter maior capacidade de reinvestir e crescer. ### 4. Atratividade para Investidores ROE elevado pode indicar uma empresa capaz de gerar retornos superiores ao mercado. ## Interpretando os Níveis de ROE ### ROE Excelente (acima de 20%) **Características:** * Gestão altamente eficiente * Vantagem competitiva sustentável * Margens operacionais elevadas * Potencial de crescimento **Atenção:** * Verificar sustentabilidade * Analisar alavancagem * Confirmar qualidade dos lucros ### ROE Bom (15% - 20%) **Características:** * Gestão competente * Negócio sólido * Retorno adequado aos acionistas * Qualidade empresarial ### ROE Médio (10% - 15%) **Características:** * Performance dentro da média * Possível espaço para melhorias * Análise setorial necessária * Acompanhar evolução ### ROE Baixo (abaixo de 10%) **Características:** * Ineficiência operacional * Problemas estruturais * Gestão questionável * Possível oportunidade de turnaround ## Consultando ROE via API brapi.dev A [API da brapi.dev](/docs/acoes) fornece dados de ROE atualizados para análise: ### Exemplo de Consulta ```bash curl "https://brapi.dev/api/quote/EGIE3?modules=defaultKeyStatistics,financialData" ``` **Resposta com dados de ROE:** ```json { "results": [{ "symbol": "EGIE3", "shortName": "ENGIE BRASIL ON", "defaultKeyStatistics": { "returnOnEquity": 0.2598, "returnOnAssets": 0.1184, "profitMargins": 0.2739 }, "financialData": { "returnOnEquity": 25.98, "currentRatio": 1.26 } }] } ``` Neste exemplo, a EGIE3 apresenta ROE de 25,98%, indicando excelente eficiência na gestão do capital dos acionistas. ## Decomposição do ROE: Fórmula DuPont A **Análise DuPont** decompõe o ROE em três componentes fundamentais: ``` ROE = Margem Líquida × Giro do Ativo × Multiplicador de Equity ``` ### Os Três Componentes #### 1. Margem Líquida ``` Margem Líquida = Lucro Líquido ÷ Receita Líquida ``` * Mede a eficiência operacional * Indica controle de custos * Revela poder de precificação #### 2. Giro do Ativo ``` Giro do Ativo = Receita Líquida ÷ Ativo Total ``` * Mede eficiência no uso dos ativos * Indica produtividade dos recursos * Revela intensidade de capital #### 3. Multiplicador de Equity ``` Multiplicador de Equity = Ativo Total ÷ Patrimônio Líquido ``` * Mede alavancagem financeira * Indica estrutura de capital * Revela uso de dívida ### Exemplo Prático da Análise DuPont ```javascript function analiseDuPont(dados) { const margemLiquida = dados.lucroLiquido / dados.receitaLiquida; const giroAtivo = dados.receitaLiquida / dados.ativoTotal; const multiplicadorEquity = dados.ativoTotal / dados.patrimonioLiquido; const roeCalculado = margemLiquida * giroAtivo * multiplicadorEquity; return { margemLiquida: margemLiquida * 100, giroAtivo: giroAtivo, multiplicadorEquity: multiplicadorEquity, roe: roeCalculado * 100, componentes: { eficienciaOperacional: margemLiquida > 0.15 ? 'Alta' : 'Baixa', eficienciaAtivos: giroAtivo > 0.5 ? 'Alta' : 'Baixa', alavancagem: multiplicadorEquity > 2 ? 'Alta' : 'Baixa' } }; } ``` ## ROE por Setor no Mercado Brasileiro ### Bancos (ROE típico: 15-25%) **Características:** * Alavancagem naturalmente alta * Margem líquida moderada * Giro do ativo baixo **Exemplos:** ITUB4, BBDC4, BBAS3 ### Utilities (ROE típico: 12-20%) **Características:** * Margens estáveis * Ativos intensivos em capital * Retorno regulamentado **Exemplos:** EGIE3, SBSP3, CPLE6 ### Varejo (ROE típico: 10-18%) **Características:** * Giro do ativo alto * Margem líquida variável * Alavancagem moderada **Exemplos:** MGLU3, LREN3, AMER3 ### Tecnologia (ROE típico: 15-30%) **Características:** * Margem líquida alta * Poucos ativos físicos * Escalabilidade **Exemplos:** TOTS3, LWSA3 ## Qualidade do ROE: Indicadores Complementares ### 1. Sustentabilidade do ROE ```python def avaliar_sustentabilidade_roe(historico_roe): # Verificar consistência nos últimos 5 anos if len(historico_roe) < 5: return "Dados insuficientes" media = sum(historico_roe) / len(historico_roe) desvio = calcular_desvio_padrao(historico_roe) if desvio / media < 0.2: # Baixa volatilidade return "ROE Sustentável" else: return "ROE Volátil" ``` ### 2. Crescimento do ROE ```javascript function analisarTendenciaROE(historico) { const crescimento = []; for (let i = 1; i < historico.length; i++) { const crescimentoAnual = (historico[i] - historico[i-1]) / historico[i-1]; crescimento.push(crescimentoAnual); } const crescimentoMedio = crescimento.reduce((a, b) => a + b) / crescimento.length; return { crescimentoMedio: crescimentoMedio * 100, tendencia: crescimentoMedio > 0 ? 'Crescente' : 'Declinante' }; } ``` ## ROE vs Outros Indicadores ### ROE vs ROA (Return on Assets) ``` ROA = Lucro Líquido ÷ Ativo Total ``` **Relação:** * ROE considera apenas capital próprio * ROA considera todo o capital (próprio + terceiros) * Diferença indica efeito da alavancagem ### ROE vs ROIC (Return on Invested Capital) ``` ROIC = NOPAT ÷ Capital Investido ``` **Diferença:** * ROIC exclui efeitos de estrutura de capital * Melhor para comparar empresas com alavancagem diferente * Foco na eficiência operacional ## Armadilhas na Análise do ROE ### 1. ROE Inflado por Alavancagem **Problema:** Alto endividamento pode artificialmente elevar o ROE **Solução:** Analisar multiplicador de equity e debt-to-equity ```javascript function verificarAlavancagem(dados) { const debtToEquity = dados.dividaTotal / dados.patrimonioLiquido; const multiplicadorEquity = dados.ativoTotal / dados.patrimonioLiquido; if (multiplicadorEquity > 3 && debtToEquity > 1) { return "⚠️ ROE pode estar inflado por alavancagem"; } return "✅ Alavancagem dentro de parâmetros normais"; } ``` ### 2. ROE Temporariamente Alto **Problema:** Lucros extraordinários podem distorcer o indicador **Solução:** Analisar ROE médio de 3-5 anos ### 3. Redução do Patrimônio Líquido **Problema:** Recompra de ações pode inflar o ROE artificialmente **Solução:** Acompanhar evolução do patrimônio líquido ## Screening de Ações por ROE ### Critérios de Filtragem ```python def screening_roe(lista_acoes): criterios = { 'roe_minimo': 15, 'roe_maximo': 50, # Evitar valores irreais 'consistencia_anos': 3, 'crescimento_minimo': 0 # ROE estável ou crescente } acoes_aprovadas = [] for ticker in lista_acoes: dados = obter_dados_brapi(ticker) # Verificar ROE atual roe_atual = dados['roe'] if roe_atual < criterios['roe_minimo'] or roe_atual > criterios['roe_maximo']: continue # Verificar consistência histórica historico_roe = dados['historico_roe'] if len([r for r in historico_roe if r > criterios['roe_minimo']]) < criterios['consistencia_anos']: continue # Verificar alavancagem if verificar_alavancagem_excessiva(dados): continue acoes_aprovadas.append({ 'ticker': ticker, 'roe': roe_atual, 'roe_medio_5anos': calcular_media(historico_roe), 'qualidade': avaliar_qualidade_roe(dados) }) return sorted(acoes_aprovadas, key=lambda x: x['roe'], reverse=True) ``` ## Estratégias de Investimento com ROE ### 1. Quality Growth **Critérios:** * ROE > 15% por 5 anos consecutivos * Crescimento consistente dos lucros * Baixa alavancagem * Reinvestimento de lucros ### 2. Value with Quality **Critérios:** * ROE > 12% * P/VP \< 2,0 * Dividendos consistentes * Gestão eficiente ### 3. Turnaround Plays **Critérios:** * ROE historicamente baixo * Sinais de melhoria operacional * Nova gestão ou estratégia * Valoração atrativa ## Monitoramento e Alertas ### Dashboard de ROE ```typescript const DashboardROE = ({ watchlist }) => { const [dados, setDados] = useState([]); useEffect(() => { const buscarDados = async () => { const resultados = []; for (const ticker of watchlist) { const response = await fetch(`https://brapi.dev/api/quote/${ticker}?modules=financialData`); const data = await response.json(); resultados.push({ ticker, roe: data.results[0].financialData.returnOnEquity, setor: data.results[0].sector, preco: data.results[0].regularMarketPrice }); } setDados(resultados.sort((a, b) => b.roe - a.roe)); }; buscarDados(); }, [watchlist]); return ( ); }; ``` ## Casos Práticos ### Caso 1: Empresa de Excelência **EGIE3 - Engie Brasil** * ROE: 25,98% * Margem líquida: 27,39% * Giro do ativo: 0,43x * Multiplicador: 2,20x * **Análise:** ROE alto sustentado por excelente margem operacional ### Caso 2: Banco Eficiente **ITUB4 - Itaú Unibanco** * ROE: 18,5% * Alavancagem moderada * Gestão disciplinada * **Análise:** ROE consistente com baixo risco ## FAQ: Perguntas Frequentes sobre ROE ### Qual é um ROE bom para investir? **ROE acima de 15% é considerado excelente** para a maioria dos setores. Entre 10-15% é bom, e abaixo de 10% pode indicar gestão ineficiente. Sempre compare com empresas do mesmo setor para contexto adequado. ### ROE alto sempre indica uma boa empresa? **Não necessariamente.** ROE alto pode ser resultado de alavancagem excessiva ou lucros pontuais. Use a **Análise DuPont** para verificar se o ROE vem de eficiência operacional, giro de ativos ou apenas alavancagem. ### Como calcular ROE se a empresa teve prejuízo? Com prejuízo, o ROE fica negativo. Nestes casos, analise **ROE histórico** dos últimos 5 anos e outros indicadores como [P/VP](/blog/como-usar-indicador-pvp-valor-patrimonial-analise-acoes) para avaliar o valor patrimonial. ### Qual diferença entre ROE e ROA? **ROE** mede retorno sobre capital próprio dos acionistas. **ROA** mede retorno sobre todos os ativos (próprios + emprestados). ROE maior que ROA indica uso de alavancagem positiva. ### ROE varia muito entre setores? **Sim, muito.** Bancos têm ROE naturalmente alto (15-25%) devido ao modelo de negócios. Utilities têm ROE menor (8-15%) mas estável. Sempre compare dentro do mesmo setor. ### Como monitorar ROE das minhas ações? Use a [API brapi.dev](/docs/acoes) para monitoramento automático. Para longo prazo, verifique ROE trimestralmente. Para análises detalhadas, acompanhe também os **componentes DuPont**. ### ROE pode ser manipulado pela empresa? **Sim, pode.** Empresas podem inflar ROE através de: recompra de ações (reduz patrimônio), aumento de alavancagem, ou contabilidade criativa. **Sempre analise sustentabilidade** e qualidade dos lucros. ### Quando ROE baixo pode ser uma oportunidade? ROE baixo pode indicar **oportunidade de turnaround** se: empresa historicamente tinha ROE alto, nova gestão implementando melhorias, problemas temporários sendo resolvidos, ou setor em recuperação. ## Conclusão O ROE é um indicador fundamental para avaliar a qualidade da gestão empresarial e o potencial de geração de valor. Empresas com ROE consistentemente alto tendem a ser investimentos superiores no longo prazo. ### Pontos-Chave: 1. **ROE > 15%** indica gestão eficiente 2. **Consistência** é mais importante que picos 3. **Análise DuPont** revela origens do ROE 4. **Combinar** com outros indicadores ### Próximos Passos: * Explore nossa [API](/docs) para dados de ROE * Use nossa [plataforma](/quotes) para screening * Aprenda sobre [outros indicadores](/blog/guia-completo-indicadores-fundamentalistas-bovespa) **Lembre-se:** ROE elevado é importante, mas deve ser sustentável e não inflado artificialmente por alavancagem excessiva. # Cotações da B3 no WordPress: Shortcode Personalizado 2025 URL: /blog/wordpress-cotacoes-b3-shortcode-personalizado.mdx Aprenda a criar um shortcode WordPress para exibir cotações automáticas da B3 em posts e páginas. Integração completa com cache e função personalizada. *** searchable: true title: 'Cotações da B3 no WordPress: Shortcode Personalizado 2025' description: 'Aprenda a criar um shortcode WordPress para exibir cotações automáticas da B3 em posts e páginas. Integração completa com cache e função personalizada.' date: '2025-10-12' keywords: 'wordpress cotações, shortcode b3, wordpress api, cotações wordpress, brapi wordpress, plugin cotações' author: 'Equipe brapi.dev' category: 'Tutoriais e Integrações' subcategory: 'CMS e Plataformas' readingTime: '6 min' tags: \['WordPress', 'PHP', 'Shortcode', 'CMS', 'Integração'] relatedPosts: \['integracao-google-sheets-cotacoes-b3-tutorial-completo', 'api-b3-python-requests-guia-pratico'] featured: false expertise: 'Desenvolvimento WordPress - 6+ anos' lastReviewed: '2025-10-12' -------------------------- import { Author, Authors } from '~/components/Authors'; # Como Exibir Cotações da B3 no WordPress > Crie um shortcode personalizado para exibir cotações automáticas de ações, ETFs e FIIs em seu site WordPress.Ranking ROE - Watchlist
{dados.map(item => ( Ticker ROE (%) Setor Qualidade ))} {item.ticker} 15 ? 'green' : 'red' }}> {item.roe.toFixed(1)}% {item.setor} {item.roe > 20 ? '⭐⭐⭐' : item.roe > 15 ? '⭐⭐' : '⭐'} ## Por Que Integrar Cotações no WordPress? Sites financeiros, blogs de investimentos e portais de notícias precisam exibir cotações atualizadas. Com a brapi.dev, você pode: * Exibir cotações em posts e páginas * Atualizar automaticamente os preços * Usar cache para performance * Criar widgets personalizados ## Implementação Básica Adicione este código ao `functions.php` do seu tema ou em um plugin personalizado: ```php 10]); if (is_wp_error($response)) { return 'Erro ao buscar dados'; } $body = wp_remote_retrieve_body($response); $data = json_decode($body, true); if (isset($data['results'][0]['regularMarketPrice'])) { $price = $data['results'][0]['regularMarketPrice']; set_transient($transient_key, $price, 60); return $price; } return 'Cotação indisponível'; } function brapi_stock_price_shortcode($atts) { $atts = shortcode_atts([ 'ticker' => 'PETR4', ], $atts); $price = brapi_get_stock_price($atts['ticker']); if (is_numeric($price)) { return 'R$ ' . number_format($price, 2, ',', '.'); } return $price; } add_shortcode('brapi_cotacao', 'brapi_stock_price_shortcode'); ?> ``` ## Uso no WordPress ### Em Posts e Páginas ``` [brapi_cotacao ticker="PETR4"] ``` ### Múltiplos Ativos ``` Petrobras: [brapi_cotacao ticker="PETR4"] Vale: [brapi_cotacao ticker="VALE3"] Itaú: [brapi_cotacao ticker="ITUB4"] ``` ### Em Templates PHP ```php ``` ## Versão Avançada com Formatação ```php 'PETR4', 'show_change' => 'true', 'show_name' => 'true', ], $atts); $ticker = $atts['ticker']; $transient_key = 'brapi_full_' . $ticker; $cached = get_transient($transient_key); if ($cached !== false) { return $cached; } $token = get_option('brapi_token'); $url = "https://brapi.dev/api/quote/{$ticker}?token={$token}"; $response = wp_remote_get($url, ['timeout' => 10]); if (is_wp_error($response)) { return ' Erro ao carregar cotação'; } $body = wp_remote_retrieve_body($response); $data = json_decode($body, true); if (!isset($data['results'][0])) { return 'Cotação não encontrada'; } $quote = $data['results'][0]; $html = ''; set_transient($transient_key, $html, 60); return $html; } add_shortcode('brapi_widget', 'brapi_stock_widget_shortcode'); // Adicionar CSS function brapi_enqueue_styles() { wp_add_inline_style('wp-block-library', ' .brapi-stock-widget { padding: 15px; border: 1px solid #ddd; border-radius: 8px; margin: 10px 0; max-width: 300px; } .brapi-name { font-size: 14px; color: #666; } .brapi-ticker { font-weight: bold; font-size: 18px; } .brapi-price { font-size: 24px; font-weight: bold; margin: 10px 0; } .brapi-change { font-size: 16px; font-weight: 600; } .brapi-change.positive { color: #10b981; } .brapi-change.negative { color: #ef4444; } '); } add_action('wp_enqueue_scripts', 'brapi_enqueue_styles'); ?> ``` ### Uso do Widget Avançado ``` [brapi_widget ticker="PETR4" show_change="true" show_name="true"] ``` ## Bloco Gutenberg ```php 'brapi-block', 'render_callback' => 'brapi_render_block' ]); } add_action('init', 'brapi_register_block'); function brapi_render_block($attributes) { $ticker = $attributes['ticker'] ?? 'PETR4'; return brapi_stock_widget_shortcode(['ticker' => $ticker]); } ?> ``` ## Página de Configurações ```phpToken salvo com sucesso!
'; } $token = get_option('brapi_token', ''); ?>``` ## Boas Práticas ### 1. Use Cache ```php set_transient($cache_key, $data, 60); // Cache de 60 segundos ``` ### 2. Valide Dados ```php $ticker = sanitize_text_field($atts['ticker']); ``` ### 3. Trate Erros ```php if (is_wp_error($response)) { error_log('brapi Error: ' . $response->get_error_message()); return 'Erro temporário'; } ``` ## Próximos Passos * [Veja exemplos em PHP](/docs/examples/php) * [Integre com outras plataformas](/docs/examples) * [Explore a documentação](/docs) ## Conclusão Com poucos minutos você pode adicionar cotações automáticas da B3 em qualquer site WordPress. Use shortcodes para flexibilidade e cache para performance! # A API fornece acesso às logos das empresas listadas na B3? URL: /faq/a-api-fornece-acesso-as-logos-das-empresas-listadas-na-b3.mdx undefined *** title: "A API fornece acesso às logos das empresas listadas na B3?" categories: * data\_coverage * plans *** # A API fornece acesso às logos das empresas listadas na B3? Sim, todos os planos (Gratuito, Startup e Pro) incluem acesso às logos das empresas listadas na B3. As imagens são fornecidas em formato otimizado para web e podem ser facilmente integradas em aplicações, dashboards e plataformas de análise para melhorar a experiência visual do usuário. Basta acessar o endpoint correspondente com o código do ativo para obter a URL da logo da empresa. # A Brapi oferece planos personalizados para grandes volumes ou necessidades específicas? URL: /faq/a-brapi-oferece-planos-personalizados-para-grandes-volumes-ou-necessidades-especificas.mdx undefined *** title: "A Brapi oferece planos personalizados para grandes volumes ou necessidades específicas?" categories: * plans\_advanced * plans *** # A Brapi oferece planos personalizados para grandes volumes ou necessidades específicas? Atualmente, nossos planos (Gratuito, Startup e Pro) atendem à grande maioria dos nossos usuários. Se você tem uma demanda de volume de dados ou requisições significativamente maior, por favor, entre em contato conosco para avaliarmos sua necessidade. # A Brapi tem dados de Fundos Imobiliários (FIIs) tão detalhados quanto os de ações? URL: /faq/a-brapi-tem-dados-de-fundos-imobiliarios-fiis-tao-detalhados-quanto-os-de-acoes.mdx undefined *** title: "A Brapi tem dados de Fundos Imobiliários (FIIs) tão detalhados quanto os de ações?" categories: * fiis * data\_coverage *** # A Brapi tem dados de Fundos Imobiliários (FIIs) tão detalhados quanto os de ações? Nosso foco principal e maior detalhe de dados (fundamentalistas, dividendos completos) são nas ações de empresas, o que a maioria dos nossos usuários Pro busca. Oferecemos cotações e dados básicos para FIIs e estamos sempre melhorando nossa cobertura. # A API da brapi: Gratuita ou Paga? URL: /faq/api-e-gratis-mesmo.mdx A API da brapi: Gratuidade versus Planos Pagos. Descubra como começar gratuitamente e explore nossos serviços. Escolha entre os planos 'Startup' e 'Pro' para recursos adicionais, maior capacidade de requisições. Ideal para empresas e projetos de diferentes tamanhos. Assine agora! *** author: 'Alisson Leal' title: 'A API da brapi: Gratuita ou Paga?' description: "A API da brapi: Gratuidade versus Planos Pagos. Descubra como começar gratuitamente e explore nossos serviços. Escolha entre os planos 'Startup' e 'Pro' para recursos adicionais, maior capacidade de requisições. Ideal para empresas e projetos de diferentes tamanhos. Assine agora!" ---------------------------------------------------------- # A API da brapi: Gratuita ou Paga? ## Gratuidade da API A API da brapi é gratuita para uso, o que significa que você pode começar a utilizar nossos serviços sem custos iniciais. Isso oferece uma excelente oportunidade para experimentar e explorar os recursos da nossa API. No entanto, também oferecemos planos pagos, como o plano "Startup" e o plano "Pro", que vêm com recursos adicionais, maior capacidade de requisições. Esses planos são ideais para empresas e projetos que exigem um nível mais avançado de suporte e acesso a recursos exclusivos. Portanto, enquanto você pode começar gratuitamente, nossos planos pagos proporcionam uma experiência aprimorada e são ideais para atender às necessidades de aplicativos e sites com diferentes volumes de tráfego e requisitos. Escolha o plano que melhor se adapta ao seu projeto e desfrute de todas as vantagens que a API da brapi pode oferecer. ## Plano Gratuito O plano gratuito da API da brapi é ideal para desenvolvedores que desejam experimentar e explorar os recursos da nossa API. Ele oferece acesso a todos os recursos da API, mas com algumas limitações. ### Limitações do Plano Gratuito * **Preço:** R$ 0,00 * **Recursos:** * Suporta até 15.000 requisições por mês * Até 1 ação por requisição * Dados atualizados a cada 30 minutos * Dados históricos de até 3 meses * Sem dados de dividendos * **Observação:** Ideal para testar a API ou projetos pessoais. Para começar a utilizar a API da brapi gratuitamente, [clique aqui](/api/create-billing-portal-link?deepLink=true). ## Planos Pagos Além da gratuidade, oferecemos planos pagos que vêm com recursos adicionais para atender às necessidades de empresas e projetos mais avançados. ### Plano Startup * **Preço:** R$ 59,99 * **Recursos:** * Suporta até 150.000 requisições por mês * Até 10 ações por requisição * Dados atualizados a cada 15 minutos * Dados históricos de até 1 ano * Dados de dividendos * **Observação:** Ideal para aplicativos e sites com tráfego moderado. Para assinar agora, [clique aqui](/api/create-billing-portal-link?deepLink=true). ### Plano Pro * **Preço:** R$ 99,99 * **Recursos:** * Suporta até 500.000 requisições por mês * Até 20 ações por requisição * Dados atualizados a cada 5 minutos * Dados históricos completos * Dados de dividendos * **Observação:** Ideal para machine learning, aplicativos e sites com tráfego intenso. Para assinar agora, [clique aqui](/api/create-billing-portal-link?deepLink=true). ## Escolha o Plano que se Adequa ao Seu Projeto Portanto, enquanto você pode começar gratuitamente, nossos planos pagos proporcionam uma experiência aprimorada e são ideais para atender às necessidades de aplicativos e sites com diferentes volumes de tráfego e requisitos. Escolha o plano que melhor se adapta ao seu projeto e desfrute de todas as vantagens que a API da brapi pode oferecer. # Posso utilizar a API para fins comerciais? URL: /faq/api-para-fins-comerciais.mdx Utilize a API da brapi para fins comerciais com confiança. Planos 'Startup' e 'Pro' oferecem recursos premium, acesso a dados financeiros atualizados. Ideal para aplicativos, sites e projetos empresariais de todos os tamanhos. *** author: 'Alisson Leal' title: 'Posso utilizar a API para fins comerciais?' description: "Utilize a API da brapi para fins comerciais com confiança. Planos 'Startup' e 'Pro' oferecem recursos premium, acesso a dados financeiros atualizados. Ideal para aplicativos, sites e projetos empresariais de todos os tamanhos." ---------------------------------------------------------------------- # Posso utilizar a API para fins comerciais? Sim, você pode utilizar a API da brapi para fins comerciais com total confiança. Nossa API foi desenvolvida com a flexibilidade necessária para atender às demandas de projetos comerciais e empresariais. Oferecemos planos pagos, como o plano "Startup" e o plano "Pro", que são especialmente adequados para uso comercial. ### Plano Startup: Ideal para Começar com o Pé Direito Este plano é ideal para aplicativos, sites e serviços com tráfego moderado. Com recursos premium, incluindo até 150.000 requisições por mês e atualizações de dados a cada 15 minutos, você pode integrar facilmente dados financeiros atualizados em seus produtos comerciais. ### Plano Pro: Elevando sua Empresa a Outro Nível Se o seu projeto envolve tráfego intenso ou requer acesso constante a dados financeiros, o plano "Pro" é a escolha certa. Ele oferece até 500.000 requisições por mês, atualizações de dados a cada 5 minutos e acesso a dados históricos completos, tornando-o ideal para machine learning, aplicativos e sites de alto desempenho. [Ver mais](https://brapi.dev/pricing) Ao escolher qualquer um dos nossos planos pagos, você terá a tranquilidade de saber que sua aplicação comercial terá acesso confiável e eficiente aos dados financeiros de que precisa. Isso permite que você forneça recursos financeiros valiosos aos seus clientes ou usuários, impulsionando o sucesso de seus projetos comerciais. # Como buscar o índice IBovespa (IBOV) pela API? URL: /faq/buscar-ibov.mdx Acompanhe o Índice IBovespa (IBOV) com a API da brapi. Obtenha informações atualizadas, valor atual, variação e mais. Explore outros índices financeiros disponíveis. Mantenha-se informado sobre o mercado financeiro brasileiro de forma fácil e conveniente. *** author: 'Alisson Leal' title: 'Como buscar o índice IBovespa (IBOV) pela API?' description: 'Acompanhe o Índice IBovespa (IBOV) com a API da brapi. Obtenha informações atualizadas, valor atual, variação e mais. Explore outros índices financeiros disponíveis. Mantenha-se informado sobre o mercado financeiro brasileiro de forma fácil e conveniente.' --------------------------- # Como buscar o índice IBovespa (IBOV) pela API? Se você deseja acompanhar o desempenho do mercado de ações brasileiro, a API da brapi oferece uma maneira simples e eficaz de obter informações atualizadas sobre o índice IBovespa (IBOV). Veja como fazer isso: ## Utilizando o Ticker ^BVSP Para buscar o índice Ibovespa, utilize o ticker `^BVSP` na API da brapi. Basta fazer uma solicitação para o seguinte endpoint: [https://brapi.dev/api/quote/^BVSP](https://brapi.dev/api/quote/^BVSP) ## Dados Atualizados Ao acessar esse endpoint, você terá acesso às informações mais recentes sobre o índice Ibovespa. Isso inclui seu valor atual, variação e outros dados relevantes. A API fornece esses dados de maneira conveniente, permitindo que você acompanhe o mercado de ações brasileiro. ## Explore Outros Índices Além do índice Ibovespa, a brapi oferece acesso a uma variedade de outros índices financeiros. Para descobrir quais índices estão disponíveis, você pode listar todos os tickers acessando o seguinte endpoint: [https://brapi.dev/api/quotes/list](https://brapi.dev/api/quotes/list) Agora você pode explorar não apenas o índice Ibovespa, mas também uma ampla gama de índices financeiros usando a API da brapi. Mantenha-se informado e atualizado sobre o mercado financeiro brasileiro de forma fácil e conveniente. # Com que frequência os dados da API são atualizados? URL: /faq/com-que-frequencia-os-dados-da-api-sao-atualizados.mdx undefined *** title: "Com que frequência os dados da API são atualizados?" categories: * data\_updates *** # Com que frequência os dados da API são atualizados? Varia por dado e plano. Cotações têm atraso de minutos (Pro) a \~30 min (Gratuito). Dados de empresas são atualizados conforme divulgados à CVM. Assinantes Pro e Startup têm prioridade nas atualizações. # Como as requisições são calculadas? URL: /faq/como-a-api-e-calculada.mdx Descubra como as requisições são calculadas na brapi com base nos diferentes planos disponíveis. Aprenda sobre os limites de requisições e ações para os planos Gratuito, Startup e Pro, e escolha o plano que melhor atenda às suas necessidades de acesso aos dados financeiros atualizados. Monitore seu uso da API por meio da sua Dashboard para garantir que você esteja dentro dos limites do seu plano e ajuste conforme necessário. Comece a utilizar a API da brapi hoje e impulsione seus aplicativos e serviços com dados financeiros precisos e atualizados. *** author: 'Alisson Leal' title: 'Como as requisições são calculadas?' description: 'Descubra como as requisições são calculadas na brapi com base nos diferentes planos disponíveis. Aprenda sobre os limites de requisições e ações para os planos Gratuito, Startup e Pro, e escolha o plano que melhor atenda às suas necessidades de acesso aos dados financeiros atualizados. Monitore seu uso da API por meio da sua Dashboard para garantir que você esteja dentro dos limites do seu plano e ajuste conforme necessário. Comece a utilizar a API da brapi hoje e impulsione seus aplicativos e serviços com dados financeiros precisos e atualizados.' ------------- # Como as Requisições São Calculadas na brapi ## Limite de Requisições por Plano Ao utilizar a API da brapi, é importante compreender como as requisições são calculadas, pois isso pode variar de acordo com o plano escolhido e a quantidade de ações incluídas em cada solicitação. Aqui estão os detalhes de cada plano disponível: ### Plano Gratuito O plano gratuito oferece até 15 mil requisições por mês, com a capacidade de incluir até 1 ação por solicitação. Isso totaliza 15 mil ações que podem ser acessadas mensalmente. ### Plano Startup Para aqueles que optarem pelo plano Startup, é possível realizar até 150 mil requisições por mês. Cada solicitação pode incluir até 10 ações, o que resulta em um total mensal de 1,5 milhão de ações disponíveis para acesso. ### Plano Pro O plano Pro é ideal para projetos de maior escala, permitindo até 500 mil requisições por mês. Cada solicitação pode incluir até 20 ações, proporcionando um total mensal impressionante de 10 milhões de ações disponíveis. Lembre-se de que o número de ações que podem ser retornadas em cada requisição varia de acordo com o plano selecionado. Portanto, a escolha do plano deve ser feita com base na quantidade de ações desejada e nas necessidades específicas do seu projeto. ## Cálculo de Requisições e Ações Para uma visão mais clara dos limites de requisições mensais e da quantidade de ações permitidas em cada solicitação para nossos três planos (Gratuito, Startup e Pro), confira o resumo abaixo: | Plano | Limite de Requisições/Mês | Limite de Ações por Requisição | Total de Ações/Mês | | -------------- | ------------------------- | ------------------------------ | ------------------ | | Plano Gratuito | 15.000 | 1 | 15.000 | | Plano Startup | 150.000 | 10 | 1.500.000 | | Plano Pro | 500.000 | 20 | 10.000.000 | ## Escolha o Plano que Atenda às Suas Necessidades Nossa API da brapi oferece uma variedade de planos projetados para atender às necessidades de todos, desde desenvolvedores individuais até empresas em crescimento e aplicativos com tráfego intenso. Com uma ampla gama de opções de limite de requisições e ações por solicitação, você pode escolher o plano que melhor se adapta ao seu projeto, garantindo acesso confiável e escalável aos dados financeiros atualizados. Independentemente de você estar explorando nossos recursos gratuitos ou aproveitando os benefícios dos planos pagos, a brapi está comprometida em fornecer dados financeiros precisos e atualizados para impulsionar seus aplicativos e serviços. Se você estiver pronto para começar, escolha o plano que melhor se adapte às suas necessidades e comece a utilizar a API da brapi hoje mesmo. ## Como Acompanhar o Uso da API: Verificando Suas Requisições Você pode monitorar o número de requisições que você já fez à API da brapi para manter o controle do seu uso. Isso é útil para entender como você está utilizando os recursos da API e para garantir que você esteja dentro dos limites do seu plano. ### Acessando a Sua Dashboard Para verificar quantas requisições você já fez, siga estas etapas simples: 1. Acesse a sua [Dashboard](https://brapi.dev/dashboard). ### Visualizando os Dados de Uso Dentro da sua Dashboard, você encontrará um gráfico que exibe o número de requisições feitas durante o seu período mensal atual. Esse gráfico oferece uma visão clara e detalhada do uso da API ao longo do tempo. ### Mantendo o Controle Monitorar o seu uso da API é uma prática recomendada para garantir que você esteja dentro dos limites do seu plano e para evitar surpresas relacionadas a limites de requisições. Com as informações fornecidas na sua Dashboard, você pode ajustar o seu uso conforme necessário para atender às suas necessidades. Lembre-se de que a brapi oferece uma variedade de planos, cada um com limites de requisições diferentes. Certifique-se de escolher o plano que melhor atenda às suas necessidades com base na quantidade de ações e requisições desejadas. Se você estiver pronto para começar, consulte nossos planos e comece a utilizar a API da brapi hoje mesmo. # Como a Brapi me ajuda a economizar tempo e recursos? URL: /faq/como-a-brapi-me-ajuda-a-economizar-tempo-e-recursos.mdx undefined *** title: "Como a Brapi me ajuda a economizar tempo e recursos?" categories: * benefits priority: true *** # Como a Brapi me ajuda a economizar tempo e recursos? A Brapi automatiza toda a coleta e tratamento de milhões de dados financeiros. Você não precisa criar nem manter scrapers ou decifrar PDFs da CVM. Isso economiza centenas de horas de trabalho, permitindo que você foque em analisar e construir. # Como entrar em contato com a equipe da brapi? URL: /faq/como-entrar-em-contato.mdx Entre em contato com a equipe da brapi para informações, dúvidas e novidades. Siga-nos no LinkedIn para atualizações, networking e suporte direto. Ou envie um email para contato@brapi.dev para respostas rápidas dentro de 24 horas úteis. *** author: 'Alisson Leal' title: 'Como entrar em contato com a equipe da brapi?' description: 'Entre em contato com a equipe da brapi para informações, dúvidas e novidades. Siga-nos no LinkedIn para atualizações, networking e suporte direto. Ou envie um email para [contato@brapi.dev](mailto:contato@brapi.dev) para respostas rápidas dentro de 24 horas úteis.' toc: false ---------- # Como entrar em contato com a equipe da brapi? Se você deseja entrar em contato com a equipe da brapi para obter informações, tirar dúvidas ou acompanhar as últimas novidades sobre o nosso projeto, você pode fazer isso de maneira simples. Veja como: ## Perguntas ou Dúvidas? Se você tiver alguma pergunta ou dúvida sobre a API da brapi, não hesite em entrar em contato conosco. Estamos aqui para ajudar! ## Opções de Contato ### Siga-nos no LinkedIn A maneira mais fácil de se manter atualizado sobre as últimas novidades, atualizações e anúncios importantes relacionados à brapi é seguindo nossa página oficial no [LinkedIn](https://www.linkedin.com/company/brapi.dev). Nossa presença no LinkedIn é uma fonte confiável de informações relevantes. #### Benefícios de Seguir-nos no LinkedIn Ao seguir a brapi no LinkedIn, você terá acesso a uma série de benefícios: * **Atualizações Regulares:** Compartilhamos regularmente informações sobre melhorias na API, lançamento de novos recursos e outros anúncios importantes. Isso garante que você esteja sempre atualizado sobre o que está acontecendo com a brapi. * **Comunicação Direta:** O LinkedIn oferece uma maneira conveniente de se comunicar diretamente conosco. Você pode enviar mensagens, fazer perguntas e interagir conosco por meio dessa plataforma. * **Networking:** Além de receber informações, você também pode fazer networking com outros profissionais e empresas que compartilham interesse na brapi e em dados financeiros. * **Apoio e Suporte:** Se você tiver dúvidas ou precisar de suporte, o LinkedIn é um canal onde podemos ajudar a esclarecer suas consultas. Portanto, não perca a oportunidade de se conectar conosco no [LinkedIn](https://www.linkedin.com/company/brapi.dev) e ficar por dentro de tudo o que está acontecendo com a brapi. Esperamos vê-lo por lá! ### Mande um Email * **Endereço:** [contato@brapi.dev](mailto:contato@brapi.dev) * **Resposta Rápida:** Normalmente, respondemos aos emails dentro de 7 dias úteis. # Como funciona o cancelamento da assinatura? URL: /faq/como-funciona-o-cancelamento-da-assinatura.mdx undefined *** title: "Como funciona o cancelamento da assinatura?" categories: * plan\_management *** # Como funciona o cancelamento da assinatura? Você pode cancelar sua assinatura a qualquer momento diretamente no seu painel. Após o cancelamento, você continuará com acesso aos benefícios do seu plano até o final do período de faturamento já pago. Não há multas ou taxas de cancelamento. # Como funciona para trocar de plano? URL: /faq/como-funciona-para-trocar-de-plano.mdx undefined *** title: "Como funciona para trocar de plano?" categories: * plan\_management *** # Como funciona para trocar de plano? Totalmente flexível. Você pode mudar de plano (upgrade ou downgrade) a qualquer momento pelo seu painel. A alteração é imediata e sem burocracia. # Como os dados de dividendos dos planos pagos me ajudam? URL: /faq/como-os-dados-de-dividendos-dos-planos-pagos-me-ajudam.mdx undefined *** title: "Como os dados de dividendos dos planos pagos me ajudam?" categories: * dividends * plans\_advanced priority: true *** # Como os dados de dividendos dos planos pagos me ajudam? Os planos pagos fornecem um histórico completo de dividendos e JCP, com todas as datas e valores. Vital para investidores calcularem rendimentos e para desenvolvedores criarem ferramentas de análise de renda. # Como realizar um upgrade ou downgrade de plano? URL: /faq/como-trocar-de-plano.mdx Saiba como realizar um upgrade ou downgrade de plano na brapi. Acesse a sua Dashboard, siga o guia passo a passo e escolha o plano certo para atender às necessidades do seu projeto. Após a troca de plano, tenha acesso imediato aos novos recursos e limites. Conte com o suporte da brapi para uma ótima experiência com nossa API. *** author: 'Alisson Leal' title: 'Como realizar um upgrade ou downgrade de plano?' description: 'Saiba como realizar um upgrade ou downgrade de plano na brapi. Acesse a sua Dashboard, siga o guia passo a passo e escolha o plano certo para atender às necessidades do seu projeto. Após a troca de plano, tenha acesso imediato aos novos recursos e limites. Conte com o suporte da brapi para uma ótima experiência com nossa API.' --------------------------- # Como Realizar um Upgrade ou Downgrade de Plano? ### Passo a Passo para Trocar de Plano A brapi oferece flexibilidade quando se trata de escolher o plano que melhor atende às suas necessidades. Se você deseja fazer um upgrade para um plano com mais recursos ou realizar um downgrade para um plano mais básico, siga este guia simples: 1. Acesse a sua [Dashboard](https://brapi.dev/dashboard). 2. Clique na opção **Editar Plano**. 3. Ou, você também pode acessar diretamente a página de planos clicando [aqui](https://brapi.dev/api/create-billing-portal-link). 4. Ou, na [página de planos](https://brapi.dev/pricing), selecione o novo plano desejado. ### Escolhendo o Plano Certo Ao escolher um novo plano, leve em consideração as necessidades do seu projeto. Se você precisa de mais requisições, ações por requisição ou recursos adicionais, um plano superior pode ser a escolha certa. Por outro lado, se suas necessidades forem mais básicas, um plano mais econômico pode ser adequado. ### Acompanhando as Mudanças Após fazer a troca de plano, você terá acesso imediato aos recursos e limites do novo plano selecionado. Certifique-se de monitorar seu uso da API e ajustar seu plano conforme necessário para evitar surpresas relacionadas a limites de requisições. A brapi está aqui para fornecer suporte e flexibilidade em suas escolhas de plano. Se você tiver dúvidas ou precisar de assistência, não hesite em [entrar em contato conosco](https://brapi.dev/contact). Estamos aqui para ajudar a garantir que você tenha a melhor experiência possível com a API da brapi. # De onde vêm os dados da Brapi e como garantem a confiabilidade? URL: /faq/de-onde-vem-os-dados-da-brapi-e-como-garantem-a-confiabilidade.mdx undefined *** title: "De onde vêm os dados da Brapi e como garantem a confiabilidade?" categories: * data\_quality priority: true *** # De onde vêm os dados da Brapi e como garantem a confiabilidade? Usamos fontes oficiais e confiáveis como a CVM, Banco Central e dados do mercado de ações brasileiro. Temos um rigoroso processo de validação para garantir dados precisos, especialmente nos planos pagos. # É fácil integrar a API da Brapi como desenvolvedor? URL: /faq/e-facil-integrar-a-api-da-brapi-como-desenvolvedor.mdx undefined *** title: "É fácil integrar a API da Brapi como desenvolvedor?" categories: * dev\_integration priority: true *** # É fácil integrar a API da Brapi como desenvolvedor? Muito fácil! É uma API REST intuitiva. Com sua chave, faça requisições GET. Nossa documentação completa tem exemplos em JavaScript, Python, PHP e mais, para você começar rápido. # Como posso acessar a documentação da API? URL: /faq/existe-alguma-documentacao.mdx Acesse a completa Documentação da API da brapi para informações detalhadas sobre como usar nossa API de maneira eficaz. Saiba tudo sobre endpoints, parâmetros, respostas e obtenha exemplos práticos de uso. Aproveite o acesso fácil e direto para explorar todos os recursos que nossa API oferece. *** author: 'Alisson Leal' title: 'Como posso acessar a documentação da API?' description: 'Acesse a completa Documentação da API da brapi para informações detalhadas sobre como usar nossa API de maneira eficaz. Saiba tudo sobre endpoints, parâmetros, respostas e obtenha exemplos práticos de uso. Aproveite o acesso fácil e direto para explorar todos os recursos que nossa API oferece.' ---------------------------------------------------------------------- # Como Acessar a Documentação da API da brapi? Se você está interessado em utilizar a API da brapi e deseja obter informações detalhadas sobre como fazê-lo, temos uma solução simples para você. Acesse nossa completa [Documentação da API da brapi](https://brapi.dev/docs). ## O que Você Encontrará na Documentação? Nossa documentação abrangente oferece tudo o que você precisa para começar a usar a API da brapi de maneira eficaz: ### Detalhes dos Endpoints A documentação inclui informações detalhadas sobre os endpoints disponíveis na API. Isso permite que você saiba exatamente como acessar os dados que precisa. ### Parâmetros das Solicitações Descubra quais parâmetros são suportados em suas solicitações para personalizar os resultados da API de acordo com suas necessidades. ### Respostas Retornadas Entenda as respostas retornadas pela API para interpretar os dados e utilizá-los em seu projeto. ### Exemplos de Uso Oferecemos exemplos práticos de uso da API para ajudar você a começar rapidamente. ## Acesso Fácil e Conveniente O acesso à nossa documentação é simples e direto. Basta clicar no link a seguir e você estará a caminho de utilizar a API da brapi com confiança: [Documentação da API da brapi](https://brapi.dev/docs) Utilize nossa documentação para explorar todos os recursos e possibilidades que nossa API oferece. Estamos aqui para ajudar você a aproveitar ao máximo nossos serviços. # Quais são as fontes de dados utilizadas pela brapi? URL: /faq/fonte-de-dados.mdx Descubra as fontes de dados confiáveis utilizadas pela brapi para fornecer informações detalhadas sobre ações, índices financeiros e cotações de moedas. Nossas fontes incluem Yahoo Finance, TradingView e awesomeapi, garantindo que ofereçamos informações financeiras precisas e atualizadas para atender às suas necessidades de consulta. *** author: 'Alisson Leal' title: 'Quais são as fontes de dados utilizadas pela brapi?' description: 'Descubra as fontes de dados confiáveis utilizadas pela brapi para fornecer informações detalhadas sobre ações, índices financeiros e cotações de moedas. Nossas fontes incluem Yahoo Finance, TradingView e awesomeapi, garantindo que ofereçamos informações financeiras precisas e atualizadas para atender às suas necessidades de consulta.' -------------------------- # Fontes de Dados Utilizadas pela brapi ## Fontes de Dados para Ações A brapi utiliza diversas fontes de dados para fornecer informações detalhadas sobre ações: * **Yahoo Finance:** Esta fonte é empregada para listar ações de forma independente e também dados de dividendos. * **TradingView:** É a fonte de informações gerais de listagem de ações. ## Fontes de Dados para Índices Quanto aos índices financeiros, a brapi obtém exclusivamente dados do Yahoo Finance. ## Fontes de Dados para Cotações de Moedas As informações de cotações de moedas são diretamente obtidas da "awesomeapi". Essa variedade de fontes de dados garante que a brapi ofereça informações financeiras precisas e atualizadas para atender às suas necessidades de consulta. # Há desconto para assinatura anual dos planos pagos? URL: /faq/ha-desconto-para-assinatura-anual-dos-planos-pagos.mdx undefined *** title: "Há desconto para assinatura anual dos planos pagos?" categories: * plans * plan\_management priority: true *** # Há desconto para assinatura anual dos planos pagos? Sim! Ao optar pela assinatura anual dos planos Startup ou Pro, você recebe um desconto significativo, geralmente equivalente a economizar o valor de um ou dois meses. É a opção com melhor custo-benefício para uso contínuo. # FAQ - Perguntas Frequentes URL: /faq.mdx Encontre respostas para as perguntas mais comuns sobre a API da brapi. Aprenda como usar nossa API para obter dados financeiros, implementar autenticação e otimizar suas consultas. *** searchable: false title: 'FAQ - Perguntas Frequentes' description: 'Encontre respostas para as perguntas mais comuns sobre a API da brapi. Aprenda como usar nossa API para obter dados financeiros, implementar autenticação e otimizar suas consultas.' ---------------------------------------- # FAQ - Perguntas Frequentes O mercado financeiro brasileiro está em constante movimento, e ter acesso a dados financeiros atualizados é essencial para tomar decisões informadas nos mercados globais. É por isso que a API da brapi se tornou uma ferramenta indispensável para desenvolvedores e empresas que buscam integrar dados financeiros em suas aplicações. ## Como começar? Para começar a usar a API da brapi, você pode fazer uma requisição simples para obter informações sobre uma ação específica. Por exemplo, para obter dados da Petrobras (PETR4), você pode usar: ```bash curl https://brapi.dev/api/quote/PETR4 ``` Esta requisição retornará informações básicas sobre a ação, incluindo preço atual, variação e volume. ## Posso usar a API gratuitamente? Sim! A API da brapi oferece um plano gratuito que permite até 15.000 requisições por mês. Este plano é ideal para desenvolvedores que estão começando ou para projetos de menor escala. ## Ações de teste com acesso irrestrito Para facilitar o desenvolvimento e teste da API, disponibilizamos **4 ações com acesso completo e irrestrito**: * **PETR4** (Petrobras PN) * **MGLU3** (Magazine Luiza ON) * **VALE3** (Vale ON) * **ITUB4** (Itaú Unibanco PN) ### Vantagens das ações de teste: ✅ **Sem necessidade de autenticação** - Não precisa de token ou chave de API\ ✅ **Sem limites de requisições** - Pode fazer quantas requisições quiser\ ✅ **Acesso a todos os módulos** - Dados fundamentalistas, históricos, dividendos\ ✅ **Todos os intervalos e períodos** - 1m, 5m, 1h, 1d, 1y, etc.\ ✅ **Dados em tempo real** - Informações sempre atualizadas ### Exemplos de uso: ```bash # Cotação simples da Petrobras (sem token) curl https://brapi.dev/api/quote/PETR4 # Dados históricos completos (sem token) curl https://brapi.dev/api/quote/VALE3?range=1y&interval=1d # Todas as 4 ações com módulos avançados (sem token) curl "https://brapi.dev/api/quote/PETR4,MGLU3,VALE3,ITUB4?modules=summaryProfile,balanceSheetHistory,defaultKeyStatistics÷nds=true" ``` **⚠️ Importante:** Se você misturar ações de teste com outras ações na mesma requisição, a autenticação será obrigatória. **Exemplo que requer autenticação:** ```bash # Mistura PETR4 (teste) com BBAS3 (requer token) curl "https://brapi.dev/api/quote/PETR4,BBAS3?token=SEU_TOKEN" ``` ## Quais dados estão disponíveis? A API oferece uma ampla gama de dados financeiros, incluindo: * Cotações de ações, FIIs e BDRs * Dados históricos de preços * Informações sobre dividendos * Dados fundamentalistas (balanços, DREs) * Indicadores financeiros * Dados de criptomoedas * Taxas de câmbio * Índices econômicos ## Como obter dados históricos? Para obter dados históricos, você pode usar os parâmetros `range` e `interval`. Por exemplo: ```bash curl https://brapi.dev/api/quote/PETR4?range=1y&interval=1d ``` Isso retornará dados diários do último ano para a Petrobras. ## Como funciona a autenticação? Para planos pagos, você receberá uma chave de API que deve ser incluída no cabeçalho `Authorization` das suas requisições: ```bash curl -H "Authorization: Bearer sua-chave-api" https://brapi.dev/api/quote/PETR4 ``` ## Há limites de requisições? Sim, os limites variam por plano: * **Gratuito**: 15.000 requisições/mês, 1 ação por requisição * **Startup**: 150.000 requisições/mês, 10 ações por requisição * **Pro**: 500.000 requisições/mês, 20 ações por requisição ## Como monitorar meu uso? Você pode acompanhar seu uso através do [dashboard](https://brapi.dev/dashboard), onde encontrará gráficos detalhados sobre suas requisições e limites. ## A API suporta WebSockets? Atualmente, a API funciona através de requisições HTTP REST. Para dados atualizados, recomendamos fazer requisições periódicas conforme sua necessidade. ## Como reportar problemas? Se encontrar algum problema ou tiver sugestões, você pode: * Enviar um email para [contato@brapi.dev](mailto:contato@brapi.dev) ## Documentação adicional Para informações mais detalhadas, consulte nossa [documentação completa](/docs) que inclui exemplos de código, referências de API e guias de implementação. # Posso Verificar Carteiras de Investimentos na B3 Usando a API? URL: /faq/integracao-com-a-b3.mdx Entenda como nossa API pode fornecer informações detalhadas sobre ações, fundos imobiliários (FII) e ativos financeiros na B3. Embora não ofereça integração direta para verificar carteiras específicas, ela complementa suas análises e fornece insights valiosos para seus investimentos. Consulte diretamente a B3 para informações detalhadas sobre carteiras individuais. *** author: 'Alisson Leal' title: 'Posso Verificar Carteiras de Investimentos na B3 Usando a API?' description: 'Entenda como nossa API pode fornecer informações detalhadas sobre ações, fundos imobiliários (FII) e ativos financeiros na B3. Embora não ofereça integração direta para verificar carteiras específicas, ela complementa suas análises e fornece insights valiosos para seus investimentos. Consulte diretamente a B3 para informações detalhadas sobre carteiras individuais.' -------------------------------------------------------------------------- # Posso Verificar Minhas Carteiras de Investimentos na B3 (ações, FII, etc) Usando a API? Entendemos a importância de acompanhar seus investimentos na B3 e, embora nossa API ofereça informações atualizadas sobre ações, fundos imobiliários (FII) e outros ativos financeiros, é importante notar que ela não oferece integração direta para verificar carteiras de investimentos específicas na B3. No entanto, nossos endpoints fornecem dados detalhados sobre ativos financeiros, o que pode ser valioso para acompanhar e analisar seu portfólio pessoal. Você pode utilizar essas informações para obter uma visão abrangente do mercado financeiro e tomar decisões informadas sobre seus investimentos. Lembramos que a verificação de carteiras específicas na B3 pode envolver sistemas mais complexos e informações detalhadas sobre cada investimento. Portanto, recomendamos que você consulte diretamente a B3 ou utilize ferramentas específicas de gestão de investimentos para esse fim. Nossa API é uma fonte confiável de dados financeiros que pode complementar suas análises e oferecer insights valiosos para seus investimentos, mesmo que não forneça acesso direto às carteiras individuais na B3. # Meus dados de pagamento e minha chave de API estão seguros? URL: /faq/meus-dados-de-pagamento-e-minha-chave-de-api-estao-seguros.mdx undefined *** title: "Meus dados de pagamento e minha chave de API estão seguros?" categories: * security * plans * dev\_integration *** # Meus dados de pagamento e minha chave de API estão seguros? Absolutamente. Utilizamos provedores de pagamento com os mais altos padrões de segurança para processar suas informações financeiras. Sua chave de API é confidencial e deve ser protegida por você. Recomendamos seguir as melhores práticas de segurança ao integrá-la em suas aplicações. # O histórico de cotações (OHLCV) do plano Pro é muito melhor? URL: /faq/o-historico-de-cotacoes-ohlcv-do-plano-pro-e-muito-melhor.mdx undefined *** title: "O histórico de cotações (OHLCV) do plano Pro é muito melhor?" categories: * historical * plans\_advanced priority: true *** # O histórico de cotações (OHLCV) do plano Pro é muito melhor? Sim. O plano Pro oferece o maior período (mais de 10 anos), essencial para testes de estratégias de investimento (backtests) e para desenvolvedores que precisam de dados históricos ricos. # O plano gratuito tem limitações importantes? URL: /faq/o-plano-gratuito-tem-limitacoes-importantes.mdx undefined *** title: "O plano gratuito tem limitações importantes?" categories: * plans priority: true *** # O plano gratuito tem limitações importantes? Sim. O gratuito é ótimo para testes, mas tem limites em requisições, histórico e atraso dos dados. Para análises profundas ou apps comerciais, os planos Startup ou Pro são essenciais para garantir dados completos e atualizados. # O que acontece se eu atingir o limite de requisições do meu plano? URL: /faq/o-que-acontece-se-eu-atingir-o-limite-de-requisicoes-do-meu-plano.mdx undefined *** title: "O que acontece se eu atingir o limite de requisições do meu plano?" categories: * plans * plans\_advanced * plan\_management *** # O que acontece se eu atingir o limite de requisições do meu plano? Você será notificado e não poderá fazer novas requisições até o início do seu próximo ciclo mensal ou até que faça um upgrade para um plano com um limite maior. Recomendamos monitorar seu uso no painel para escolher o plano mais adequado. # Além do BVSP, vocês disponibilizam outros índices financeiros? URL: /faq/outros-indices.mdx Descubra os índices financeiros disponibilizados pela nossa API, além do BVSP. Acesse informações detalhadas sobre diversos índices financeiros que abrangem diferentes setores e segmentos do mercado. Tome decisões informadas com base em uma ampla variedade de dados financeiros. *** author: 'Alisson Leal' title: 'Além do BVSP, vocês disponibilizam outros índices financeiros?' description: 'Descubra os índices financeiros disponibilizados pela nossa API, além do BVSP. Acesse informações detalhadas sobre diversos índices financeiros que abrangem diferentes setores e segmentos do mercado. Tome decisões informadas com base em uma ampla variedade de dados financeiros.' toc: false ---------- # Além do BVSP, Quais Outros Índices Financeiros Vocês Disponibilizam? Estamos comprometidos em fornecer uma ampla gama de informações financeiras para atender às suas necessidades. Além do índice IBovespa (^BVSP), nossa API oferece acesso a diversos outros índices financeiros. Aqui estão os detalhes: ## Índices Disponíveis Você pode explorar os seguintes links para obter informações detalhadas sobre os índices financeiros que disponibilizamos: * [Índices Disponíveis](https://brapi.dev/api/available): Este endpoint apresenta uma lista completa dos índices financeiros e ações disponíveis para consulta. Esses índices fornecem insights abrangentes sobre diferentes aspectos do mercado financeiro, permitindo que você acompanhe o desempenho de vários setores e segmentos. Dessa forma, você pode tomar decisões informadas e estratégicas com base em uma ampla variedade de dados financeiros. # Por que escolher o plano Pro em vez do Gratuito ou Startup? URL: /faq/por-que-escolher-o-plano-pro-em-vez-do-gratuito-ou-startup.mdx undefined *** title: "Por que escolher o plano Pro em vez do Gratuito ou Startup?" categories: * plans\_advanced * plans priority: true *** # Por que escolher o plano Pro em vez do Gratuito ou Startup? O plano Pro é nossa solução completa. Você acessa todos os dados fundamentalistas históricos (BP, DRE, DFC, DVA desde 2009, trimestrais e anuais), cotações de mais de 10 anos, dividendos completos e o maior volume de requisições com menor atraso. Ideal para análises e apps financeiros sérios. # Posso usar a Brapi para construir um app comercial ou para minha empresa? URL: /faq/posso-usar-a-brapi-para-construir-um-app-comercial-ou-para-minha-empresa.mdx undefined *** title: "Posso usar a Brapi para construir um app comercial ou para minha empresa?" categories: * commercial\_use * plans\_advanced *** # Posso usar a Brapi para construir um app comercial ou para minha empresa? Sim, com certeza! Nossos planos pagos, especialmente o Pro, são feitos para isso. Suportam apps comerciais, fintechs, plataformas de análise e uso corporativo com dados robustos e alto volume. # Posso usar minha chave de API de um plano pago em mais de um projeto ou aplicação? URL: /faq/posso-usar-minha-chave-de-api-de-um-plano-pago-em-mais-de-um-projeto-ou-aplicacao.mdx undefined *** title: "Posso usar minha chave de API de um plano pago em mais de um projeto ou aplicação?" categories: * dev\_integration * plans * plan\_management *** # Posso usar minha chave de API de um plano pago em mais de um projeto ou aplicação? Sim, sua chave de API é vinculada à sua conta e ao seu plano. Você pode usá-la em quantos projetos ou aplicações desejar, desde que o volume total de requisições esteja dentro do limite do seu plano contratado. # Restrições e diretrizes para uso da API URL: /faq/quais-as-limitacoes.mdx Conheça as restrições e diretrizes para o uso da API da brapi. Explore nossos planos disponíveis e saiba como usar nossos recursos de forma responsável para manter uma experiência positiva para toda a comunidade de usuários. *** author: 'Alisson Leal' title: 'Restrições e diretrizes para uso da API' description: 'Conheça as restrições e diretrizes para o uso da API da brapi. Explore nossos planos disponíveis e saiba como usar nossos recursos de forma responsável para manter uma experiência positiva para toda a comunidade de usuários.' -------------------------------------------------------------------- # Restrições e Diretrizes para Uso da API ## Quantidade de Requisições Na brapi, queremos tornar nossa API acessível e útil para o maior número possível de usuários. Portanto, não impomos restrições específicas em relação ao número de buscas ou à frequência das solicitações em nossa API. Temos a capacidade de suportar uma grande quantidade de requisições por mês, independentemente do plano escolhido. ## Planos Disponíveis Oferecemos diversos planos que se adequam às suas necessidades: [Ver planos](https://brapi.dev/pricing) ### Plano Gratuito * **Preço:** R$ 0 * Até 15.000 requisições por mês * Até 1 ação por requisição * Dados históricos de até 3 meses * Dados atualizados a cada 30 minutos * *Observação:* Ideal para testar a API ou projetos pessoais. ### Plano Startup * **Preço:** R$ 59,99 * Até 150.000 requisições por mês * Até 10 ações por requisição * Dados atualizados a cada 15 minutos * Dados históricos de até 1 ano * Dados de dividendos * *Observação:* Ideal para apps e sites com tráfego moderado. Este é o plano mais popular. ### Plano Pro * **Preço:** R$ 99,99 * Até 500.000 requisições por mês * Até 20 ações por requisição * Dados atualizados a cada 5 minutos * Dados históricos completos * Dados de dividendos * *Observação:* Ideal para machine learning, aplicativos e sites com tráfego intenso. ## Diretrizes de Uso Responsável Recomendamos que você utilize os recursos da API com responsabilidade, evitando um número excessivo de requisições desnecessárias. Isso garantirá a disponibilidade e o bom funcionamento da API para todos os usuários. Queremos que você aproveite ao máximo nossa API enquanto mantém uma experiência positiva para toda a comunidade. # Quais formas de pagamento são aceitas para os planos? URL: /faq/quais-formas-de-pagamento-sao-aceitas-para-os-planos.mdx undefined *** title: "Quais formas de pagamento são aceitas para os planos?" categories: * plans * plan\_management *** # Quais formas de pagamento são aceitas para os planos? Aceitamos as principais bandeiras de cartão de crédito para as assinaturas mensais e anuais. Para algumas situações ou planos de maior valor, podemos avaliar outras formas de pagamento. Consulte nosso suporte para mais detalhes. # Quais são os timeframes disponíveis?* ** URL: /faq/quais-sao-os-timeframes-disponiveis.mdx undefined *** title: "Quais são os timeframes disponíveis?\* \*\*" categories: * plans *** # Quais são os timeframes disponíveis?\* \*\* Os timeframes disponíveis são: 1m, 2m, 5m, 15m, 30m, 60m, 90m e 1h para um histórico de até 7 dias. Para 1d, 5d, 1wk para até 10 anos. E 1mo, 3mo para o histórico completo de mais de 10 anos # Qual a diferença real no atraso (delay) dos dados entre os planos? URL: /faq/qual-a-diferenca-real-no-atraso-delay-dos-dados-entre-os-planos.mdx undefined *** title: "Qual a diferença real no atraso (delay) dos dados entre os planos?" categories: * plans * plans\_advanced * data\_updates priority: true *** # Qual a diferença real no atraso (delay) dos dados entre os planos? O atraso dos dados de cotações é um diferencial importante:Configurações brapi.dev
Para dados fundamentalistas, a atualização depende da divulgação oficial pelas empresas à CVM, com prioridade de processamento para os planos Pro e Startup. # Frequência de atualização dos dados na API URL: /faq/qual-a-frequencia.mdx Saiba mais sobre a frequência de atualização dos dados na API da brapi. Escolha a frequência que melhor atende às suas necessidades, com atualizações de ações, criptomoedas e moedas em diferentes intervalos de tempo. Mantenha-se informado com dados financeiros atualizados de acordo com sua preferência. *** author: 'Alisson Leal' title: 'Frequência de atualização dos dados na API' description: 'Saiba mais sobre a frequência de atualização dos dados na API da brapi. Escolha a frequência que melhor atende às suas necessidades, com atualizações de ações, criptomoedas e moedas em diferentes intervalos de tempo. Mantenha-se informado com dados financeiros atualizados de acordo com sua preferência.' --------------------------------------------------------------------------- # Frequência de Atualização dos Dados na API A brapi oferece atualizações frequentes de dados financeiros, permitindo que você escolha a frequência que melhor atende às suas necessidades. ## Plano Gratuito * **Ações:** Atualizadas a cada 30 minutos * **Criptomoedas e Moedas:** Atualizadas a cada 1 hora ## Plano Startup * **Ações:** Atualizadas a cada 15 minutos * **Criptomoedas e Moedas:** Atualizadas a cada 30 minutos ## Plano Pro * **Ações:** Atualizadas a cada 5 minutos * **Criptomoedas e Moedas:** Atualizadas a cada 5 minutos A brapi oferece atualizações frequentes de dados financeiros, permitindo que você escolha a frequência que melhor atende às suas necessidades. # Qual a vantagem real dos dados fundamentalistas nos planos pagos? URL: /faq/qual-a-vantagem-real-dos-dados-fundamentalistas-nos-planos-pagos.mdx undefined *** title: "Qual a vantagem real dos dados fundamentalistas nos planos pagos?" categories: * fundamentals * plans\_advanced priority: true *** # Qual a vantagem real dos dados fundamentalistas nos planos pagos? Com os planos pagos, especialmente o Pro, você obtém demonstrativos financeiros completos (Balanços, DREs, Fluxos de Caixa, DVAs), anuais e trimestrais, com longo histórico. Isso permite análises profundas de empresas e criação de modelos robustos. # Saiba mais sobre o projeto e utilize a API em sua aplicação URL: /faq/quero-utilizar.mdx Descubra mais sobre o projeto brapi e como você pode incorporar nossa API em sua aplicação. Oferecemos fácil integração para acesso a dados financeiros atualizados, permitindo o desenvolvimento de soluções relacionadas ao mercado financeiro. Saiba como começar registrando-se em nosso site e obtenha suas credenciais de acesso na Dashboard. *** author: 'Alisson Leal' title: 'Saiba mais sobre o projeto e utilize a API em sua aplicação' description: 'Descubra mais sobre o projeto brapi e como você pode incorporar nossa API em sua aplicação. Oferecemos fácil integração para acesso a dados financeiros atualizados, permitindo o desenvolvimento de soluções relacionadas ao mercado financeiro. Saiba como começar registrando-se em nosso site e obtenha suas credenciais de acesso na Dashboard.' ------------------------------------ # Saiba Mais sobre o Projeto e Utilize a API em Sua Aplicação ## Sobre o Projeto O projeto brapi oferece uma API de fácil integração que fornece acesso a dados financeiros atualizados. Isso possibilita o desenvolvimento de soluções relacionadas ao mercado financeiro, como aplicativos de acompanhamento de portfólio, sistemas de análise de dados e muito mais. ## Como Começar 1. **Registro:** Para começar, registre-se em nosso site. 2. **Credenciais de Acesso:** Após o registro, você pode obter suas credenciais de acesso na [Dashboard](https://brapi.dev/dashboard). Com a API da brapi, você pode transformar suas ideias em realidade e oferecer recursos financeiros aos seus clientes ou usuários. # Se eu mudar de plano no meio do ciclo, como funciona a cobrança? URL: /faq/se-eu-mudar-de-plano-no-meio-do-ciclo-como-funciona-a-cobranca.mdx undefined *** title: "Se eu mudar de plano no meio do ciclo, como funciona a cobrança?" categories: * plan\_management *** # Se eu mudar de plano no meio do ciclo, como funciona a cobrança? Ao fazer um upgrade, você pagará apenas a diferença proporcional pelo tempo restante do seu ciclo atual, tendo acesso imediato aos novos benefícios. Em caso de downgrade, a mudança e o novo valor entrarão em vigor no próximo ciclo de faturamento. # Sou investidor individual. O plano Pro serve para mim? URL: /faq/sou-investidor-individual-o-plano-pro-serve-para-mim.mdx undefined *** title: "Sou investidor individual. O plano Pro serve para mim?" categories: * user\_profile * plans\_advanced *** # Sou investidor individual. O plano Pro serve para mim? Sim, o plano Pro é altamente recomendado para investidores individuais sérios. Ele oferece dados profundos para análises fundamentalistas, testes de estratégias e acompanhamento completo de dividendos, ajudando em decisões mais assertivas. # Limites de requisições na API URL: /faq/tem-algum-limite.mdx Descubra os limites de requisições na API da brapi e escolha o plano que melhor atende às suas necessidades. Oferecemos diferentes planos com limites máximos de requisições por mês para garantir acesso contínuo aos recursos da nossa API de acordo com a demanda do seu projeto. Verifique os detalhes de cada plano na nossa página de preços e considere um upgrade para atender melhor às suas necessidades. *** author: 'Alisson Leal' title: 'Limites de requisições na API' description: 'Descubra os limites de requisições na API da brapi e escolha o plano que melhor atende às suas necessidades. Oferecemos diferentes planos com limites máximos de requisições por mês para garantir acesso contínuo aos recursos da nossa API de acordo com a demanda do seu projeto. Verifique os detalhes de cada plano na nossa página de preços e considere um upgrade para atender melhor às suas necessidades.' ----------------------------- # Limites de Requisições na API ## Limites de Uso Nossa API estabelece limites de uso com base nos diferentes planos disponíveis. Os limites máximos de requisições por mês para cada plano são os seguintes: * **Plano Gratuito:** Até 15.000 requisições por mês. * **Plano Startup:** Até 150.000 requisições por mês. * **Plano Pro:** Até 500.000 requisições por mês. Lembramos que esses valores podem variar de acordo com o plano escolhido, e é importante verificar as especificações detalhadas de cada plano na nossa [página de preços](https://brapi.dev/pricing). ## Upgrade de Plano Caso você alcance o limite de requisições mensais do seu plano, considere fazer um upgrade para um plano que atenda melhor às suas necessidades. Isso garantirá que você tenha acesso contínuo aos recursos da nossa API de acordo com a demanda do seu projeto. # Vocês oferecem política de reembolso? URL: /faq/voces-oferecem-politica-de-reembolso.mdx undefined *** title: "Vocês oferecem política de reembolso?" categories: * plan\_management * plans *** # Vocês oferecem política de reembolso? Sim. Caso não esteja satisfeito com um plano pago, você pode solicitar o reembolso integral em até 7 dias após a primeira assinatura do plano, sem necessidade de justificativa. Basta entrar em contato conosco. Após o reembolso, seu plano será alterado para o gratuito. # Vocês oferecem suporte técnico? URL: /faq/voces-oferecem-suporte-tecnico.mdx undefined *** title: "Vocês oferecem suporte técnico?" categories: * tech\_support *** # Vocês oferecem suporte técnico? Sim. Usuários do gratuito acessam nossa documentação. Assinantes dos planos Startup e Pro têm suporte prioritário por email, e o Pro também oferece canais de atendimento mais diretos. # Política de Cookies da brapi.dev URL: /legal/cookie-policy.mdx Entenda como a brapi.dev utiliza cookies para garantir o funcionamento da plataforma, melhorar sua experiência e realizar análises. Gerencie suas preferências de forma simples e transparente. *** title: 'Política de Cookies da brapi.dev' description: 'Entenda como a brapi.dev utiliza cookies para garantir o funcionamento da plataforma, melhorar sua experiência e realizar análises. Gerencie suas preferências de forma simples e transparente.' ---------------------------------------------- # Política de Cookies da brapi.dev **Última atualização: 07 de junho 2025** Esta política explica o que são cookies, como os utilizamos na plataforma **brapi.dev** e quais são suas opções para gerenciá-los. ## 1. O que são Cookies? Cookies são pequenos arquivos de texto que um site armazena no seu computador ou dispositivo móvel quando você o visita. Eles são amplamente utilizados para fazer os sites funcionarem de forma mais eficiente, bem como para fornecer informações aos proprietários do site. Eles nos permitem, por exemplo, lembrar de suas preferências, manter sua sessão ativa e entender como você interage com nossa plataforma. ## 2. Como Utilizamos os Cookies? Utilizamos cookies por vários motivos importantes. Eles podem ser classificados nas seguintes categorias: ### a) Cookies Essenciais (Estritamente Necessários) Estes cookies são indispensáveis para o funcionamento da nossa plataforma. Sem eles, serviços como o login na sua conta ou o processamento de pagamentos não funcionariam. * **Cookies de Autenticação:** Usamos estes cookies para manter sua sessão ativa após o login. Isso evita que você precise digitar sua senha em cada nova página que visita no seu dashboard. * **Cookies de Segurança:** Ajudam a proteger sua conta e nossa plataforma contra atividades maliciosas e acessos não autorizados. Por serem essenciais, **não é possível desativar estes cookies** sem comprometer funcionalidades críticas do site. ### b) Cookies de Desempenho e Análise (Analytics) Estes cookies nos ajudam a entender como os visitantes interagem com a **brapi.dev**. Eles coletam informações de forma anônima e agregada. * **Google Analytics:** Utilizamos esta ferramenta para coletar dados como quais páginas são mais visitadas, quanto tempo os usuários passam no site e como chegaram até nós. Essas informações nos ajudam a melhorar continuamente a experiência do usuário e a produzir conteúdo relevante. As informações coletadas por estes cookies não identificam você pessoalmente. ### c) Cookies de Funcionalidade Estes cookies são usados para lembrar de escolhas que você fez no passado, como suas preferências de tema (claro/escuro) ou outras configurações de personalização. O objetivo é proporcionar uma experiência mais pessoal e conveniente. ## 3. Cookies de Terceiros Além dos nossos próprios cookies, também utilizamos cookies de parceiros confiáveis, como o **Google Analytics**, para as finalidades de análise descritas acima. Não temos controle sobre como esses terceiros utilizam seus cookies, mas selecionamos apenas parceiros que demonstram compromisso com a privacidade e segurança. ## 4. Como Gerenciar e Desativar Cookies? Você tem total controle sobre os cookies não essenciais. A maioria dos navegadores permite que você gerencie cookies através de suas configurações. Você pode: * Ver quais cookies estão ativos e excluí-los individualmente. * Bloquear cookies de terceiros. * Bloquear cookies de sites específicos. * Bloquear todos os cookies. * Excluir todos os cookies ao fechar o navegador. **Atenção:** Se você optar por bloquear todos os cookies (incluindo os essenciais), você poderá não conseguir acessar todas as partes do nosso site, e funcionalidades como o login deixarão de funcionar. Para mais informações sobre como gerenciar cookies, consulte a seção de ajuda do seu navegador: * [Google Chrome](https://support.google.com/chrome/answer/95647) * [Mozilla Firefox](https://support.mozilla.org/pt-BR/kb/ative-e-desative-os-cookies-que-os-sites-usam) * [Microsoft Edge](https://support.microsoft.com/pt-br/windows/excluir-e-gerenciar-cookies-168dab11-0753-043d-7c16-ede5947fc64d) * [Safari](https://support.apple.com/pt-br/guide/safari/sfri11471/mac) ## 5. Mais Informações Esperamos que esta política tenha esclarecido como utilizamos cookies. Nosso objetivo é usar essa tecnologia para melhorar sua experiência, mantendo sempre o respeito à sua privacidade. Se você tiver qualquer dúvida, entre em contato conosco através do e-mail **[contato@brapi.dev](mailto:contato@brapi.dev)**. # Documentos Legais URL: /legal.mdx Documentos legais da brapi.dev, incluindo termos de uso, política de privacidade e política de cookies. Mantenha-se informado sobre nossos compromissos legais e de privacidade. *** searchable: false title: 'Documentos Legais' description: 'Documentos legais da brapi.dev, incluindo termos de uso, política de privacidade e política de cookies. Mantenha-se informado sobre nossos compromissos legais e de privacidade.' -------------------------------------- # Documentos Legais Bem-vindo à seção de documentos legais da brapi.dev. Aqui você encontrará todas as informações importantes sobre nossos termos, políticas e compromissos legais. ## Documentos Disponíveis ### [Termos de Uso](/legal/terms-of-use) Condições gerais para uso da plataforma, API e dados financeiros oferecidos pela brapi.dev. ### [Política de Privacidade](/legal/privacy-policy) Como coletamos, utilizamos, armazenamos e protegemos suas informações pessoais. ### [Política de Cookies](/legal/cookie-policy) Informações sobre como utilizamos cookies e tecnologias similares em nosso site. ## Compromisso com a Transparência Na brapi.dev, acreditamos na transparência e no respeito aos direitos dos nossos usuários. Nossos documentos legais são elaborados de forma clara e acessível, garantindo que você entenda exatamente como funciona nossa plataforma e quais são seus direitos e responsabilidades. ## Atualizações Todos os documentos legais são revisados periodicamente e atualizados conforme necessário. Recomendamos que você verifique esta seção regularmente para se manter informado sobre quaisquer alterações. ## Dúvidas? Se você tiver alguma dúvida sobre nossos documentos legais ou precisar de esclarecimentos, entre em contato conosco através do nosso [formulário de contato](/contact) ou envie um e-mail para [contato@brapi.dev](mailto:contato@brapi.dev). # Política de Privacidade da brapi.dev URL: /legal/privacy-policy.mdx Entenda como a brapi.dev coleta, utiliza, armazena e protege seus dados pessoais, em conformidade com a LGPD. Sua privacidade é nossa prioridade. *** title: 'Política de Privacidade da brapi.dev' description: 'Entenda como a brapi.dev coleta, utiliza, armazena e protege seus dados pessoais, em conformidade com a LGPD. Sua privacidade é nossa prioridade.' -------------------------------------------------------------------------- # Política de Privacidade da brapi.dev **Última atualização: 07 de junho 2025** A sua privacidade é uma prioridade para a **brapi.dev**. Esta Política de Privacidade explica como coletamos, usamos, armazenamos e protegemos suas informações pessoais quando você utiliza nossos Serviços, que incluem o site (brapi.dev), a API e a plataforma como um todo. Nosso compromisso é ser transparente e proteger seus dados, em conformidade com a Lei Geral de Proteção de Dados (LGPD - Lei nº 13.709/2018) e outras regulamentações aplicáveis. ## 1. Quais Dados Coletamos? Coletamos apenas as informações estritamente necessárias para fornecer e melhorar nossos Serviços. Os dados coletados podem ser divididos em duas categorias: **a) Informações que Você nos Fornece Diretamente:** * **Dados de Cadastro:** Ao criar uma conta, solicitamos seu nome e endereço de e-mail. * **Dados de Pagamento:** Ao assinar um plano pago, nosso provedor de pagamentos (ex: Stripe) coleta as informações necessárias para processar a transação, como dados do cartão de crédito. A **brapi.dev não armazena os dados completos do seu cartão de crédito**. **b) Informações Coletadas Automaticamente:** * **Dados de Uso da API:** Registramos informações sobre como você utiliza nossa API, como as chaves de API utilizadas, os endpoints acessados, o volume de requisições e eventuais erros. Esses dados são essenciais para monitorar a performance, garantir a segurança e fazer a cobrança correta dos planos. * **Dados de Navegação (Cookies):** Utilizamos cookies e tecnologias similares para melhorar sua experiência em nosso site, entender como ele é utilizado e personalizar o conteúdo. Você pode gerenciar suas preferências de cookies através das configurações do seu navegador. ## 2. Como Usamos Seus Dados? Utilizamos suas informações para as seguintes finalidades: * **Fornecer e Gerenciar os Serviços:** Criar sua conta, gerar sua chave de API, processar pagamentos e garantir o funcionamento da plataforma. * **Comunicação:** Enviar e-mails importantes sobre sua conta, como avisos de faturamento, atualizações dos Termos de Uso ou alterações significativas nos Serviços. * **Segurança e Monitoramento:** Proteger nossa plataforma contra fraudes, abusos e atividades maliciosas. * **Melhora Contínua:** Analisar dados de uso de forma agregada e anônima para entender como nossos Serviços são utilizados e como podemos melhorá-los. ## 3. Com Quem Compartilhamos Seus Dados? A **brapi.dev não vende, aluga ou compartilha suas informações de identificação pessoal com terceiros**, exceto nas seguintes situações: * **Provedores de Serviço:** Compartilhamos informações com empresas que nos auxiliam a operar, como provedores de pagamento (para processar suas assinaturas) e serviços de infraestrutura em nuvem (para hospedar nossa plataforma). Esses provedores só têm acesso aos dados necessários para realizar suas funções e são contratualmente obrigados a protegê-los. * **Obrigação Legal:** Podemos divulgar suas informações se formos obrigados por lei, intimação ou outro processo legal, ou para proteger nossos direitos e a segurança de nossos usuários. ## 4. Seus Direitos como Titular dos Dados (LGPD) De acordo com a LGPD, você tem o direito de: * **Confirmar** a existência de tratamento dos seus dados. * **Acessar** seus dados. * **Corrigir** dados incompletos, inexatos ou desatualizados. * **Solicitar a anonimização, bloqueio ou eliminação** de dados desnecessários ou tratados em desconformidade com a lei. * **Solicitar a portabilidade** dos seus dados a outro fornecedor de serviço. * **Revogar o consentimento**, quando aplicável. Para exercer seus direitos, entre em contato conosco através do e-mail **[contato@brapi.dev](mailto:contato@brapi.dev)**. ## 5. Segurança dos Dados Implementamos medidas de segurança técnicas e organizacionais para proteger seus dados contra perda, roubo e acesso, uso ou modificação não autorizados. Isso inclui o uso de criptografia (HTTPS), controle de acesso rigoroso e outras práticas padrão do setor. ## 6. Retenção de Dados Manteremos suas informações pessoais apenas pelo tempo necessário para cumprir as finalidades para as quais foram coletadas, incluindo obrigações legais, contábeis ou de relatórios. Após esse período, seus dados serão excluídos de forma segura ou anonimizados. ## 7. Links para Sites Externos Nosso site pode conter links para outros sites que não são operados por nós. Não temos controle sobre o conteúdo e as práticas desses sites e não podemos nos responsabilizar por suas respectivas políticas de privacidade. ## 8. Alterações a Esta Política Podemos atualizar nossa Política de Privacidade periodicamente. Notificaremos você sobre quaisquer alterações publicando a nova política nesta página e, se as alterações forem significativas, poderemos fornecer um aviso mais proeminente (como um e-mail). ## 9. Contato Se você tiver alguma dúvida sobre esta Política de Privacidade ou sobre como lidamos com seus dados, entre em contato conosco: **E-mail:** [contato@brapi.dev](mailto:contato@brapi.dev) # Termos de Uso da brapi.dev URL: /legal/terms-of-use.mdx Condições de uso da plataforma, API e dados financeiros oferecidos pela brapi.dev. Leia atentamente antes de utilizar nossos serviços. *** title: 'Termos de Uso da brapi.dev' description: 'Condições de uso da plataforma, API e dados financeiros oferecidos pela brapi.dev. Leia atentamente antes de utilizar nossos serviços.' --------------------------------------------------------------- # Termos de Uso da brapi.dev **Última atualização: 07 de junho 2025** Bem-vindo à **brapi.dev**! Estes Termos de Uso ("Termos") governam seu acesso e uso da nossa plataforma, incluindo o site (brapi.dev), a Interface de Programação de Aplicações ("API"), a documentação e todos os dados e informações fornecidos ("Serviços"). Ao criar uma conta, acessar ou utilizar nossos Serviços, você concorda em cumprir estes Termos e todas as leis e regulamentos aplicáveis. Se você não concordar com qualquer parte destes Termos, você não está autorizado a utilizar os Serviços. ## 1. Definições Principais * **"Plataforma"** ou **"brapi.dev"**: Refere-se ao site, à API e a toda a infraestrutura que compõe os nossos Serviços. * **"Usuário"**, **"você"**: Refere-se a qualquer indivíduo ou entidade que acessa ou utiliza a Plataforma. * **"Dados"**: Refere-se a todas as informações financeiras, cotações, históricos, fundamentos e outros materiais disponibilizados através da nossa API. ## 2. Uso da API e Licença A **brapi.dev** concede a você uma licença limitada, não exclusiva, intransferível e revogável para acessar e usar nossa API e os Dados, estritamente de acordo com estes Termos e com os limites do seu plano de assinatura (Gratuito, Startup ou Pro). Sob esta licença, você **não pode**: 1. **Revender, redistribuir ou sublicenciar** os Dados ou o acesso à API para terceiros. 2. Criar um serviço de proxy, "espelho" ou qualquer forma de wrapper em torno da nossa API com o intuito de oferecer um serviço concorrente ou de acesso público. 3. Tentar descompilar, desmontar ou fazer engenharia reversa de qualquer software ou componente da nossa infraestrutura. 4. Remover ou alterar quaisquer avisos de direitos autorais, marcas registradas ou outras notações de propriedade dos nossos Serviços. 5. Utilizar a API ou os Dados para qualquer finalidade ilegal ou que viole os direitos de terceiros. 6. Exceder os limites de requisições, profundidade de dados ou outras restrições estabelecidas pelo seu plano de assinatura. A violação de qualquer uma dessas restrições resultará na rescisão automática e imediata da sua licença e conta, sem prejuízo de outras medidas legais cabíveis. ## 3. Contas de Usuário e Segurança Para acessar a maioria dos nossos Serviços, você precisará criar uma conta e obter uma chave de API (token). Você concorda em: * Fornecer informações verdadeiras, precisas e completas durante o registro. * Manter a confidencialidade da sua senha e da sua chave de API. * Ser o único responsável por todas as atividades que ocorram em sua conta. Nunca compartilhe sua chave de API publicamente ou a exponha no código do lado do cliente (frontend). A **brapi.dev** não se responsabiliza por perdas ou danos decorrentes do seu descumprimento desta obrigação de segurança. ## 4. Isenção de Responsabilidade e Uso dos Dados 1. Os Serviços e os Dados são fornecidos **"como estão" ("as is")**. A **brapi.dev** não oferece garantias, expressas ou implícitas, sobre a precisão, completude, confiabilidade ou adequação dos Dados para um fim específico. Embora nos esforcemos para obter informações de fontes confiáveis, não garantimos que os Dados estarão livres de erros ou interrupções. 2. **IMPORTANTE:** Os Dados e informações fornecidos pela **brapi.dev** têm propósito exclusivamente **informativo e educacional** e **NÃO CONSTITUEM ACONSELHAMENTO FINANCEIRO, DE INVESTIMENTO, JURÍDICO OU DE QUALQUER OUTRA NATUREZA**. Você é o único responsável por suas próprias decisões de investimento e por qualquer uso que faça dos Dados. ## 5. Limitação de Responsabilidade Em nenhuma hipótese a **brapi.dev**, seus diretores ou fornecedores serão responsáveis por quaisquer danos (incluindo, sem limitação, danos por perda de dados, perda de lucro ou interrupção de negócios) decorrentes do uso ou da incapacidade de usar os nossos Serviços, mesmo que tenhamos sido avisados da possibilidade de tais danos. ## 6. Modificações nos Termos Reservamo-nos o direito de modificar estes Termos a qualquer momento, a nosso exclusivo critério. A versão mais recente estará sempre disponível em nosso site. É sua responsabilidade revisar estes Termos periodicamente. O uso contínuo da Plataforma após a publicação de quaisquer alterações constitui sua aceitação dos novos Termos. ## 7. Lei Aplicável e Foro Estes Termos e Condições são regidos e interpretados de acordo com as leis da **República Federativa do Brasil**. Você concorda em se submeter à jurisdição exclusiva dos tribunais do foro da Comarca de **Brasília, DF, Brasil**, renunciando a qualquer outro, por mais privilegiado que seja, para resolver quaisquer disputas decorrentes destes Termos.
- Plano Gratuito: Atraso aproximado de 30 minutos.
- Plano Startup: Atraso reduzido para aproximadamente 15 minutos.
- Plano Pro: Nosso menor atraso, aproximadamente 5 minutos.