No momento, você está visualizando Buscar informações de um ativo na B3 usando Python

Buscar informações de um ativo na B3 usando Python

  • Autor do post:
  • Categoria do post:Python
  • Última modificação do post:27/01/2026
  • Comentários do post:0 comentário

Neste artigo, você vai aprender como buscar informações de um ativo da B3 (Bolsa de Valores do Brasil) usando Python. Vamos entender quais ferramentas são necessárias, como acessar os dados de forma prática e segura e, por fim, como exibir essas informações no seu código. Mesmo que você esteja dando os primeiros passos em programação ou no mundo dos investimentos, este guia vai te ajudar a compreender todo o processo de forma simples e objetiva. Gosta de aplicar Python em finanças ? Saiba como
balancear uma carteira de investimentos usando Python. Este artigo tem fins estritamente educacionais de programação em Python e não constitui recomendação de investimento.

Preparando o ambiente

Antes de começarmos a buscar informações dos ativos, precisamos preparar nosso ambiente de trabalho. Isso envolve ter o Python instalado e adicionar bibliotecas que vão facilitar a busca dos ativos na B3 e o tratamento dos dados.

Instalação do Python

Se ainda não tem o Python instalado, acesse o site oficial e faça o download da versão mais recente. Durante a instalação, marque a opção Add Python to PATH ou se estiver em português “Adicionar Python ao caminho do sistema” para facilitar o uso no terminal.

Instalação das bibliotecas necessárias

Iremos utilizar uma bibliotecas importante, o yfinance. Para isso, não precisamos baixar em site externo, mas usar o comando pip no terminal. A biblioteca yfinance irá buscar os ativos listados na B3. Dessa forma, só precisamos digitar o seguinte comando no terminal.

Instalando o yfinance

Terminal
    pip install yfinance==0.2.66
    
  

Dica importante: Certifique-se que a versão baixada do yfinance é a 0.2.66. Isso evitará possíveis problemas, pois atualmente é a versão mais estável disponível.

Verificar se a versão correta foi instalada

Para se certificar que a versão instalada do yfinance foi a 0.2.66 podemos no terminal executar o comando:

Terminal
    pip show yfinance
    
  

Se aparecer uma imagem semelhante a imagem abaixo, então a instalação está correta. Contudo, caso já tenha instalado em outro momento uma versão anterior, basta executar o comando mencionado acima que o python irá apagar a versão antiga e substituir pela nova versão.

Pronto! Seu ambiente já está configurado e podemos seguir para o próximo passo.

Com o ambiente configurado e as bibliotecas instaladas, já podemos escrever nosso primeiro código para coletar dados de um ativo.

Definindo a estrutura básica do programa

Vamos iniciar com a estrutura básica e a biblioteca que iremos utilizar.

Python
    import yfinance as yf

def main():
   return pass

main()
    
  

Esse código, define a primeira instrução realiza a importação do módulo yfinance, renomeando-o como yf, o que permite acessar suas funções de forma simplificada e voltada à obtenção e manipulação de dados financeiros. Em seguida, é definida a função main(), que representa o ponto central de execução do código.

Dentro dela, a instrução pass atua como um marcador de posição, indicando que, embora a função já esteja declarada, ainda não há nenhuma lógica implementada. Por fim, o comando main() é chamado, fazendo com que o Python execute o conteúdo da função ao rodar o script. Por fim, é somente  estabelecido a base estrutural de um programa bem organizado.

Principais métricas que você pode extrair

Agora, é apresentado as principais métricas que podemos obter da B3 usando o Python.

Buscando informações básicas de um ativo

O passo seguinte é definir algumas variáveis dentro da função main(). A primeira variável chamaremos de acao, ela receberá o código do ativo listado na B3 que iremos buscar seguido do sufixo “.SA”. É importante ressaltar que esse sufixo determina que a ação está listada na bolsa brasileira B3. Adiante, chamaremos o método Ticket que está dentro da biblioteca yfinance passando como parâmetro a variável que corresponde ao ativo que buscamos. Isso retornará um objetivo com as características do ativo. A partir disso, podemos utlizar o comando print para ver as informações como nome, setor e valor atual. O código abaixo apresenta o que foi descrito.

Python
    
import yfinance as yf

acao = "BBAS3.SA" #Ação do banco do Brasil

informacoes = yf.Ticker(acao)

info = informacoes.info

print(f"Nome: {info.get('longName')}")
print(f"Setor: {info.get('sector')}")
print(f"Preço atual: {info.get('currentPrice')} BRL")
    
  

Buscando o histórico de um ativo

É possível também buscar o histórico de um ativo em um determinado período. Para isso, precisamos utlizar um outro método do yfinance chamado history passando um parâmetro: o período que queremos os dados. O código abaixo mostra como é possível fazer isso.

Python
    
import yfinance as yf 

bbas3 = yf.Ticker("BBAS3.SA")

dados = bbas3.history(period="6mo") #Obtém os dados dos últimos 6 meses

print("Histórico dos últimos 6 meses (BBAS3):")
print(dados.head())
    
  

Buscando o preço atual de um ativo

Além disso, para obter o preço atual de fechamento podemos fazer um comando muito semelhante ao mostrado acima, porém com algumas modificações para permitir pegar o preço “close”. O código abaixo mostra como fazer.

Python
    
import yfinance as yf

bbas3 = yf.Ticker("BBAS3.SA")

historico = bbas3.history(period="1d")

if not historico.empty:
    preco_atual = historico["Close"].iloc[-1]
    print(f"Preço atual do Banco do Brasil: R${preco_atual:.2f}")
else:
    print("Não foi possível obter o preço atual no momento.")
    
  

Buscando informações para análises fundamentalistas

Por fim, o yfinance oferece um recurso muito interessante pra quem faz análise fundamentalista de ações, que é a possibilidade de pegar balanços, demonstrações financeiras e fluxo de caixa das empresas. Isso pode ser feito com o seguinte trecho de código.

Python
    
import yfinance as yf

bbas3 = yf.Ticker("BBAS3.SA")


print("\n--- Balanço Patrimonial (Anual) ---")
print(bbas3.balance_sheet) # Balanço Patrimonial (Anual)


print("\n--- Demonstração de Resultados (Financials) ---")
print(bbas3.financials) # Demonstração de Resultados (DRE)


print("\n--- Fluxo de Caixa ---")
print(bbas3.cashflow) # Fluxo de Caixa

    
  

Estrutura completa do código

Montando todos os trechos de código em um arquivo python temos a seguinte estrutura.

Python
    import yfinance as yf

def main():

    #Buscando informações básicas de um ativo

    acao = "BBAS3.SA" #Ação do banco do Brasil

    informacoes = yf.Ticker(acao)

    info = informacoes.info

    print(f"Nome: {info.get('longName')}")
    print(f"Setor: {info.get('sector')}")
    print(f"Preço atual: {info.get('currentPrice')} BRL")

    #Buscando o histórico de um ativo

    bbas3 = yf.Ticker("BBAS3.SA")

    dados = bbas3.history(period="6mo") #Obtém os dados dos últimos 6 meses

    print("Histórico dos últimos 6 meses (BBAS3):")
    print(dados.head())

    #Buscando o preço atual de um ativo

    bbas3 = yf.Ticker("BBAS3.SA")

    historico = bbas3.history(period="1d")

    if not historico.empty:
        preco_atual = historico["Close"].iloc[-1]
        print(f"Preço atual do Banco do Brasil: R${preco_atual:.2f}")
    else:
        print("Não foi possível obter o preço atual no momento.")

    #Buscando informações para análises fundamentalistas

    bbas3 = yf.Ticker("BBAS3.SA")

    print("\n--- Balanço Patrimonial (Anual) ---")
    print(bbas3.balance_sheet) # Balanço Patrimonial (Anual)


    print("\n--- Demonstração de Resultados (Financials) ---")
    print(bbas3.financials) # Demonstração de Resultados (DRE)


    print("\n--- Fluxo de Caixa ---")
    print(bbas3.cashflow) # Fluxo de Caixa


main()

    
  

Execução do código

Após a execução é possível obter um resultado como o apresentado abaixo:

Bash
    
Nome: Banco do Brasil S.A.
Setor: Financial Services
Preço atual: 21.2 BRL
Histórico dos últimos 6 meses (BBAS3):
                                Open       High        Low      Close    Volume  Dividends  Stock Splits
Date                                                                                                    
2025-07-14 00:00:00-03:00  21.008988  21.018934  20.511616  20.571301  28395000        0.0           0.0
2025-07-15 00:00:00-03:00  20.640931  20.949301  20.601140  20.790142  30999200        0.0           0.0
2025-07-16 00:00:00-03:00  20.879671  20.879671  20.063981  20.770248  55147900        0.0           0.0
2025-07-17 00:00:00-03:00  20.730460  20.790144  20.471826  20.630985  28673400        0.0           0.0
2025-07-18 00:00:00-03:00  20.491720  20.710563  20.093823  20.153507  42591900        0.0           0.0
Preço atual do Banco do Brasil: R$21.20

--- Balanço Patrimonial (Anual) ---
                                                      2024-12-31    2023-12-31    2022-12-31    2021-12-31
Treasury Shares Number                              2.287603e+07  2.318146e+07  2.366075e+07  2.403524e+07
Ordinary Shares Number                              5.707958e+09  5.707653e+09  5.707173e+09  5.706799e+09
Share Issued                                        5.730834e+09  5.730834e+09  5.730834e+09  5.730834e+09
Net Debt                                                     NaN           NaN           NaN  4.182574e+10
Total Debt                                          1.701416e+11  1.421892e+11  1.551995e+11  1.719459e+11
Tangible Book Value                                 1.682726e+11  1.584334e+11  1.494804e+11  1.349638e+11
Invested Capital                                    3.449246e+11  3.073039e+11  3.157706e+11  3.139409e+11
Net Tangible Assets                                 1.682726e+11  1.584334e+11  1.494804e+11  1.349638e+11
Common Stock Equity                                 1.796230e+11  1.692353e+11  1.605711e+11  1.419950e+11
Total Capitalization                                3.449246e+11  3.073039e+11  3.157706e+11  3.139409e+11
Total Equity Gross Minority Interest                1.842363e+11  1.735703e+11  1.640288e+11  1.448572e+11
Minority Interest                                   4.613326e+09  4.335047e+09  3.457767e+09  2.862168e+09
Stockholders Equity                                 1.796230e+11  1.692353e+11  1.605711e+11  1.419950e+11
Other Equity Interest                               5.100000e+09  6.100000e+09  7.100000e+09  8.100000e+09
Fixed Assets Revaluation Reserve                             NaN           NaN           NaN  0.000000e+00
Treasury Stock                                      2.635230e+08  2.682550e+08  2.725700e+08  2.769130e+08
Retained Earnings                                  -1.537558e+10 -9.188503e+09  4.217580e+08           NaN
Capital Stock                                       1.200000e+11  1.200000e+11  9.000002e+10  9.000002e+10
Common Stock                                        1.200000e+11  1.200000e+11  9.000002e+10  9.000002e+10
Total Liabilities Net Minority Interest             2.214483e+12  1.980308e+12  1.865370e+12  1.787676e+12
Derivative Product Liabilities                               NaN  2.509742e+09  3.045463e+09  2.603927e+09
Long Term Debt And Capital Lease Obligation         1.701416e+11  1.421892e+11  1.551995e+11  1.719459e+11
Payables                                            7.808428e+10  6.984115e+10  6.233771e+10  5.811527e+10
Other Payable                                       1.198448e+10  9.978613e+09  8.154449e+09  5.843128e+09
Dividends Payable                                   4.315436e+09  3.322561e+09           NaN           NaN
Total Tax Payable                                   9.366450e+09  7.244414e+09  7.422707e+09  1.066169e+10
Accounts Payable                                    5.241792e+10  4.929556e+10  4.676056e+10  4.161045e+10
Total Assets                                        2.398719e+12  2.153878e+12  2.029399e+12  1.932533e+12
Defined Pension Benefit                             2.733886e+10  2.385168e+10  2.883025e+10  2.058475e+10
Investments And Advances                            6.187833e+11  4.960804e+11  2.708325e+11  2.525306e+11
Investmentin Financial Assets                       5.969600e+11  4.738654e+11  2.520325e+11  2.352545e+11
Held To Maturity Securities                                  NaN  1.662250e+08  5.740450e+08  1.697138e+09
Available For Sale Securities                       5.781309e+11  4.596921e+11  2.498203e+11  2.314223e+11
Financial Assets Designatedas Fair Value Throug...  6.161376e+09  1.219962e+10           NaN           NaN
Long Term Equity Investment                         2.182329e+10  2.221505e+10  1.880002e+10  1.727610e+10
Goodwill And Other Intangible Assets                1.135042e+10  1.080193e+10  1.109064e+10  7.031258e+09
Other Intangible Assets                             1.135042e+10  1.078752e+10  1.101462e+10  7.031258e+09
Goodwill                                                     NaN  1.325700e+07  7.602000e+07           NaN
Net PPE                                             1.639697e+10  1.411801e+10  8.825918e+09  8.541236e+09
Accumulated Depreciation                           -2.217431e+10 -1.977357e+10 -1.286360e+10 -1.199162e+10
Gross PPE                                           3.857128e+10  3.389158e+10  2.168952e+10  2.053286e+10
Construction In Progress                                     NaN  1.116084e+09  8.968980e+08  6.715680e+08
Other Properties                                    1.935595e+10  1.657016e+10  5.923999e+09  5.554344e+09
Machinery Furniture Equipment                       5.703714e+09  5.185778e+09  5.637059e+09  5.305050e+09
Buildings And Improvements                          1.309621e+10  1.177216e+10  8.912801e+09  8.679901e+09
Land And Improvements                               4.154070e+08  3.634720e+08  3.187640e+08  3.219930e+08
Prepaid Assets                                      3.632763e+09  2.371639e+09  5.837780e+08  4.062110e+08
Receivables                                         1.486445e+10  1.269232e+10  4.917473e+10  6.577666e+10
Taxes Receivable                                    1.204715e+10  9.630569e+09  1.152350e+10  8.807717e+09
Cash And Cash Equivalents                           2.520669e+11  1.945275e+11  1.686824e+11  1.301201e+11
Cash Financial                                      2.007974e+10  1.732774e+10  1.831055e+10  1.802300e+10
Cash Cash Equivalents And Federal Funds Sold        5.742573e+11  5.883100e+11  7.513227e+11  7.702956e+11

--- Demonstração de Resultados (Financials) ---
                                                      2024-12-31    2023-12-31    2022-12-31    2021-12-31
Tax Effect Of Unusual Items                         0.000000e+00  0.000000e+00 -1.014956e+04 -1.505752e+08
Tax Rate For Calcs                                  3.400000e-01  1.939770e-01  1.990110e-01  1.569750e-01
Total Unusual Items                                          NaN -7.156700e+07 -5.100000e+04 -9.592310e+08
Total Unusual Items Excluding Goodwill                       NaN -7.156700e+07 -5.100000e+04 -9.592310e+08
Net Income From Continuing Operation Net Minori...  2.635886e+10  2.986096e+10  3.508077e+10  2.224624e+10
Reconciled Depreciation                             5.109556e+09  5.192367e+09  2.833098e+09  2.828694e+09
Net Interest Income                                 1.045144e+11  8.874873e+10  8.226943e+10  6.273943e+10
Interest Expense                                    1.689908e+11  1.766899e+11  1.584393e+11  6.893018e+10
Interest Income                                     2.735053e+11  2.654386e+11  2.407087e+11  1.316696e+11
Normalized Income                                   2.635886e+10  2.986096e+10  3.508081e+10  2.305489e+10
Net Income From Continuing And Discontinued Ope...  2.635886e+10  2.986096e+10  3.508077e+10  2.224624e+10
Diluted Average Shares                              5.708392e+09  5.707985e+09  5.707543e+09  5.707155e+09
Basic Average Shares                                5.708392e+09  5.707985e+09  5.707543e+09  5.707155e+09
Diluted EPS                                         4.620000e+00  5.230000e+00  5.415000e+00  3.430000e+00
Basic EPS                                           4.620000e+00  5.230000e+00  5.415000e+00  3.430000e+00
Diluted NI Availto Com Stockholders                 2.635886e+10  2.986096e+10  3.089762e+10  1.957442e+10
Net Income Common Stockholders                      2.635886e+10  2.986096e+10  3.089762e+10  1.957442e+10
Otherunder Preferred Stock Dividend                          NaN  2.040990e+08  2.146170e+08  1.359830e+08
Net Income                                          2.635886e+10  2.986096e+10  3.111224e+10  1.971040e+10
Minority Interests                                 -2.812704e+09 -3.304626e+09 -2.682890e+09 -1.605513e+09
Net Income Including Noncontrolling Interests       2.917156e+10  3.316559e+10  3.379513e+10  2.131592e+10
Net Income Extraordinary                                     NaN -4.328027e+09 -3.968528e+09 -2.535833e+09
Net Income Continuous Operations                    2.917156e+10  3.316559e+10  3.776366e+10  2.385175e+10
Tax Provision                                      -1.460975e+09  7.981600e+09  9.382630e+09  4.441300e+09
Pretax Income                                       2.771059e+10  4.114719e+10  4.714629e+10  2.829305e+10
Other Non Operating Income Expenses                          NaN  2.535270e+08  7.192020e+08  2.460570e+08
Special Income Charges                                       NaN -7.156700e+07 -5.100000e+04 -9.592310e+08
Write Off                                                    NaN  7.156700e+07  5.100000e+04  9.592310e+08
Gain On Sale Of Security                            3.691682e+09 -3.672070e+08           NaN           NaN
Operating Expense                                   7.755848e+10  6.826405e+10  5.854954e+10  5.502919e+10
Other Operating Expenses                            2.188937e+10  1.935457e+10  2.203513e+10  1.943337e+10
Depreciation And Amortization In Income Statement   5.109556e+09  5.192367e+09  2.833098e+09  2.828694e+09
Amortization                                        2.467259e+09  2.356219e+09  1.361750e+09  1.441449e+09
Depreciation Income Statement                       2.642297e+09  2.836148e+09  1.471348e+09  1.387245e+09
Selling General And Administration                  8.201089e+09  7.315605e+09  8.129221e+09  8.140537e+09
Selling And Marketing Expense                       8.906530e+08  7.631110e+08  6.608100e+08  6.475260e+08
General And Administrative Expense                  7.310436e+09  6.552494e+09  7.468411e+09  7.493011e+09
Insurance And Claims                                4.853990e+08  4.243650e+08  2.941940e+08  2.220620e+08
Rent And Landing Fees                               3.139320e+08  1.478720e+08  1.429655e+09  1.420381e+09
Total Revenue                                       1.417614e+11  1.254659e+11  1.232483e+11  9.977656e+10
Operating Revenue                                   1.417614e+11  1.254659e+11  1.232483e+11  9.977656e+10

--- Fluxo de Caixa ---
                                           2024-12-31    2023-12-31    2022-12-31    2021-12-31
Free Cash Flow                           1.214619e+11  1.170924e+10  5.810186e+10 -5.110122e+10
Capital Expenditure                     -5.746240e+09 -5.031540e+09 -6.592814e+09 -4.909272e+09
End Cash Position                        8.316724e+10  5.699981e+10  6.882628e+10  5.449468e+10
Beginning Cash Position                  5.699981e+10  6.882628e+10  5.449468e+10  1.761895e+11
Effect Of Exchange Rate Changes          1.381338e+10 -1.586637e+10 -5.501147e+09  1.553477e+09
Changes In Cash                          1.235405e+10  4.039905e+09  1.983274e+10 -1.232483e+11
Financing Cash Flow                     -2.136123e+10 -3.434195e+10 -2.697874e+10 -2.377820e+10
Net Other Financing Charges             -3.546145e+09 -1.768553e+10 -1.573266e+09 -2.294146e+09
Interest Paid Cff                       -2.126160e+08 -2.581970e+08           NaN           NaN
Cash Dividends Paid                     -1.482429e+10 -1.295652e+10 -1.181030e+10 -6.454965e+09
Common Stock Dividend Paid              -1.482429e+10 -1.295652e+10 -1.181030e+10           NaN
Net Common Stock Issuance                         NaN           NaN           NaN  0.000000e+00
Net Issuance Payments Of Debt                     NaN -6.916721e+09 -1.223004e+10 -1.435943e+10
Net Long Term Debt Issuance                       NaN -6.916721e+09 -1.223004e+10 -1.435943e+10
Investing Cash Flow                     -9.349281e+10  2.164107e+10 -1.788319e+10 -5.327815e+10
Dividends Received Cfi                   7.294472e+09  5.251011e+09  4.216912e+09  2.031955e+09
Net Investment Purchase And Sale        -9.503077e+10  2.144945e+10 -1.615562e+10 -4.997414e+10
Sale Of Investment                       3.488026e+11  2.129037e+11  2.217187e+11  2.219149e+11
Purchase Of Investment                  -4.438333e+11 -1.914543e+11 -2.378743e+11 -2.718890e+11
Net Business Purchase And Sale          -1.350000e+07 -3.120000e+07  6.450600e+08 -5.166330e+08
Sale Of Business                                  NaN  0.000000e+00  6.450600e+08  0.000000e+00
Purchase Of Business                    -1.350000e+07 -3.120000e+07  0.000000e+00 -5.166330e+08
Net Intangibles Purchase And Sale       -2.773925e+09 -2.009620e+09 -4.855443e+09 -3.153679e+09
Purchase Of Intangibles                 -2.773925e+09 -2.009620e+09 -4.855443e+09 -3.153679e+09
Net PPE Purchase And Sale               -2.969092e+09 -3.018570e+09 -1.734099e+09 -1.665650e+09
Sale Of PPE                              3.223000e+06  3.350000e+06  3.272000e+06  8.994300e+07
Purchase Of PPE                         -2.972315e+09 -3.021920e+09 -1.737371e+09 -1.755593e+09
Operating Cash Flow                      1.272081e+11  1.674078e+10  6.469467e+10 -4.619195e+10
Taxes Refund Paid                       -1.003751e+10 -5.519660e+09 -5.836491e+09 -3.689135e+09
Change In Working Capital                6.195116e+10 -6.655139e+10  4.374422e+09 -9.428174e+10
Change In Other Current Liabilities      8.878866e+09 -4.598008e+10 -1.320498e+10  8.720377e+09
Change In Other Current Assets          -8.244607e+09 -1.524700e+09 -7.235668e+09 -1.239938e+10
Other Non Cash Items                     1.425940e+08  4.550500e+07 -6.234000e+06 -2.510840e+08
Provisionand Write Offof Assets          5.164776e+10  2.954110e+10  3.139562e+10  2.758560e+10
Deferred Tax                            -1.460975e+09  7.981600e+09  9.382630e+09  4.441300e+09
Depreciation And Amortization            5.109556e+09  5.192367e+09  2.833098e+09  2.828694e+09
Amortization Cash Flow                   2.467259e+09  2.356219e+09           NaN  2.127100e+07
Depreciation                             2.642297e+09  2.836148e+09  2.833098e+09  2.828694e+09
Pension And Employee Benefit Expense     9.409385e+09  5.898798e+09 -2.762476e+09 -1.754070e+09
Gain Loss On Investment Securities      -5.081770e+08 -5.364800e+07           NaN           NaN
Net Foreign Currency Exchange Gain Loss -1.046240e+10  1.429368e+10 -2.029866e+09  1.141947e+09
Gain Loss On Sale Of PPE                -2.779740e+08 -1.589930e+08 -7.282740e+08 -2.838730e+08
Net Income From Continuing Operations    2.917156e+10  3.316559e+10  3.111224e+10  1.971040e+10
    
  

Importante: Após sucessivas chamadas a API do Yahoo finanças pode apresentar erro, pois segundo a documentação, ela não suporta uma carga de requisições muito alta.

Vídeo passo a passo de como buscar um ativo na B3 usando o Python

Se você ficou com alguma dúvida na hora de implementar a solução, não se preocupe! Vá ao canal do Descomplicando algoritmos no YouTube e assista um vídeo detalhado mostrando o passo a passo.

Deixe um comentário