Este projeto envolve o desenvolvimento de uma solução em Python para acessar e consumir a API do Banco Central, obtendo os valores de fechamento de venda e compra de cotação de moedas estrangeiras.
Utilizando a biblioteca requests para fazer as requisições HTTP e o Docker com PostgreSQL para armazenar os dados, buscando facilitar o acesso e análise dessas informações de forma direta e eficiente.
Sinta-se à vontade para clonar, adaptar e ajustar o projeto conforme necessário. Consulte as instruções abaixo, se precisar. 👽
Este projeto foi desenvolvido utilizando o Poetry + Pyenv para gerenciamento de ambientes virtuais e bibliotecas.
- pandas = "^2.2.1"
- requests = "^2.31.0"
- sqlalchemy = "^2.0.29"
- psycopg2 = "^2.9.9"
Você pode instalar as dependências manualmente, ou, utilizando o Poetry ou o Pip com os seguintes comandos:
poetry install
pip install -r requirements.txt
Utilizando PostgreSQL para persistência de dados, porém você tem a liberdade de optar por outras bases de dados. No entanto, caso escolha o PostgreSQL, sinta-se à vontade para seguir o guia abaixo.
Você pode escolher entre utilizar o Docker para subir um banco PostgreSQL ou instalar de outras maneiras.
docker-compose up -d
Segue tutorial aleatório da Hashtag Treinamentos.
Script de criação da tabela disponibilizado em src/sql
.
Lembre-se sempre de verificar o usuário, senha, base, porta e tabela. Configurado logo após o início da função main
, altere se necessário.
start_date = '02-01-2016'
end_date = '04-01-2024'
coin = 'EUR' # or USD
dbuser = 'teste'
dbpass = 'teste'
dbname = 'teste_db'
dblocal = 'localhost:5437'
dbtable = 'public.ptax'
Isso irá garantir que as informações sejam persistidas no banco de dados PostgreSQL.
- A documentação pode não estar tão detalhada; talvez seja necessário um certo nível de conhecimento para adaptar o código.
- Se tudo estiver configurado corretamente, basta executa o script e verificar a tabela no banco de dados usando pgAdmin ou DBeaver.
- Com esse projeto, conseguimos facilmente persistir informações de diversos tipos de moedas, contanto que estejam disponíveis na base de dados do Banco Central do Brasil (BACEN).
- Disponibilizado um arquivo ipynb em
src/data_analysis
com alguns insights.