python-bcb¶
python-bcb é uma interface em Python estruturada para obter informações da API de dados abertos do Banco Central do Brasil.
O projeto de Dados Abertos do Banco Central do Brasil disponibiliza diversas APIs provendo acesso direto a dados de:
Moedas
Taxas de Juros
Índices de preços
Informações de Instituições Financeiras
Expectativas do Mercado (Expectativas do Boletim FOCUS)
E muito outros …
O pacote python-bcb
implementa interfaces para algumas APIs
disponibilizadas pelo Banco Central de forma que o resultado
das consultas, na maioria dos casos, é um DataFrame
pandas
formatado com os dados.
Instalação¶
python-bcb está disponível no Python Package Index e pode ser instalado via pip
usando.
pip install python-bcb
APIs implementadas¶
sgs
Utiliza o webservice do SGS (Sistema Gerenciador de Séries Temporais) para obter os dados. Diversas séries estão disponíveis no SGS: taxas de juros, índices de preços, indicadores econômicos, …, e com um simples chamado da função
bcb.sgs.get()
é possível tê-las em umDataFrame
pandas. Veja a documentação em SGS.Conversor de Moedas
Implementado no módulo
currency
, um conjunto de funções que realiza webscraping no site do Conversor de Moedas do Banco Central, possível obter séries temporais de frequência diária de diversas moedas. Veja a documentação em Conversor de Moedas.Moedas OData
O Banco Central disponibiliza diversas informações em APIs que seguem o padrão OData <https://odata.org>. A classe
bcb.PTAX
implementa uma API OData que entrega os boletins diários de taxas de câmbio do Banco Central. Esta API entrega mais informações do que o que é obtido noConversor de Moedas
. Veja a documentação em Moedas.Expectativas
A API de Expectativas de Mercado traz todas as estatísticas das variáveis macroeconômicas fornecidos por um conjuto de instituições do mercado financeiro. A classe
bcb.Expectativas
implementa essa interface no padrão OData. Veja a documentação em Expectativas.Taxas de Juros
API que retorna as taxas de juros de operações de crédito por instituição financeira (médias dos últimos 5 dias). A classe
bcb.TaxaJuros
implementa essa interface. Veja a documentação em Taxas de Juros.ODataAPI
O BCB disponibiliza diversas APIs que seguem a especificação OData. Algumas APIs mais utilizadas como as
bcb.PTAX
ebcb.Expectativas
possuem uma classe específica, para as APIs menos utilizadas, é possível utilizar a classebcb.ODataAPI
para acessar a API. Toda API que segue a especificação OData possui uma URL de acesso, esta URL é passada para a classebcb.ODataAPI
e o objeto criado dá total acesso a API. Veja a documentação em Classe ODataAPI.- Muito mais
Veja todos os endpoints implementados na documentação de nossa API.
Uso¶
In [1]: from bcb import sgs
In [2]: sgs.get(('IPCA', 433), last=12)
Out[2]:
IPCA
Date
2023-06-01 -0.08
2023-07-01 0.12
2023-08-01 0.23
2023-09-01 0.26
2023-10-01 0.24
2023-11-01 0.28
2023-12-01 0.56
2024-01-01 0.42
2024-02-01 0.83
2024-03-01 0.16
2024-04-01 0.38
2024-05-01 0.46