Este é um aplicativo desenvolvido em Streamlit que auxilia na jornada de investimentos, permitindo a simulação de aportes iniciais e mensais em diferentes tipos de investimentos, como Poupança, CDI, Tesouro Direto, LCI, LCA, Previdência Privada e Carteiras de Ações.
- Simulação de Investimentos: Insira o valor de aporte inicial e mensal e visualize a projeção de crescimento ao longo de 30 anos.
- Taxas de Rendimento: Obtenha taxas de rendimento atualizadas de diversas fontes (Banco Central, YFinance) e permita ajustes manuais.
- Comparação de Investimentos: Compare o rendimento de diferentes tipos de investimentos e visualize os resultados em gráficos.
- Carteiras de Ações: Inclua carteiras de ações predefinidas (ex: Carteira Barsi) ou customizadas e veja a simulação de rendimento.
- Animações Lottie: Interface interativa e animada utilizando animações Lottie.
- Streamlit: Framework principal para criação da aplicação web.
- Pandas: Manipulação e análise de dados.
- NumPy: Suporte para operações matemáticas e cálculos.
- YFinance: Obtenção de dados financeiros de ações.
- Requests: Acesso a APIs externas.
- OpenAI: Integração com GPT-4 para geração de insights (comentado no código).
- Streamlit-Lottie: Animações Lottie para uma interface mais amigável.
- Python 3.7 ou superior
- Pip para gerenciamento de pacotes
-
Clone o repositório:
git clone https://github.com/seu-usuario/nome-do-repositorio.git cd nome-do-repositorio
-
Crie um ambiente virtual:
python -m venv venv source venv/bin/activate # No Windows use `venv\Scripts\activate`
-
Instale as dependências:
pip install -r requirements.txt
-
Adicione sua chave da API OpenAI (opcional) no código:
openai.api_key = 'sua-chave-api'
-
Execute a aplicação:
streamlit run app.py
app.py
: Código principal da aplicação Streamlit.Animation-FinanceGuru-1721707438111.json
: Arquivo Json contendo animações Lottie.requirements.txt
: Lista de dependências do projeto.
Coloque esse conteúdo em um arquivo chamado requirements.txt no diretório raiz do seu projeto. Isso garantirá que todas as dependências necessárias sejam instaladas ao configurar o ambiente.
streamlit
pandas
numpy
yfinance
requests
openai
streamlit-lottie
-
Funções de Carregamento:
load_lottiefile(filepath: str)
: Carrega arquivos Lottie.obter_taxa_bacen(endpoint)
: Obtém taxa de rendimento da API do Banco Central.obter_rendimento_acoes(tickers)
: Calcula o rendimento anual médio das ações.obter_info_acoes(tickers)
: Obtém informações atualizadas dos tickers das ações.
-
Funções de Cálculo:
calcular_rendimento(valor_inicial, valor_mensal, taxa_anual, anos=30)
: Calcula o rendimento ao longo do tempo.obter_taxas()
: Obtém as taxas de rendimento de várias fontes.resumir_dados(df)
: Resume os dados de um DataFrame.
-
Funções de Exibição:
exibir_texto_longo(texto, max_length=1000)
: Exibe textos longos em múltiplos blocos.st_lottie
: Exibe animações Lottie na interface Streamlit.
Esta aplicação Streamlit permite a análise de faturas de cartão de crédito, extraindo e categorizando transações a partir de arquivos PDF. A aplicação utiliza a API do OpenAI para fornecer insights financeiros detalhados sobre os gastos do usuário.
- Upload de Arquivos PDF: Carregue sua fatura de cartão de crédito em formato PDF.
- Extração de Texto: Extração automática de texto a partir do PDF.
- Análise de Transações: Identificação e categorização das transações.
- Gráfico de Despesas: Visualização gráfica das despesas por categoria.
- Insights Financeiros: Utilização da API do OpenAI para gerar insights financeiros detalhados.
- Interação com o Usuário: Permite ao usuário fazer perguntas específicas sobre seus gastos.
- Streamlit: Framework para criação de aplicações web interativas em Python.
- pdfplumber: Biblioteca para extração de texto de arquivos PDF.
- OpenAI: API do OpenAI para geração de insights financeiros.
- Pandas: Biblioteca para manipulação e análise de dados.
- Matplotlib: Biblioteca para criação de gráficos.
-
Clone o repositório:
git clone https://github.com/seu-usuario/seu-repositorio.git cd seu-repositorio
-
Crie e ative um ambiente virtual (opcional, mas recomendado):
python -m venv venv source venv/bin/activate # Linux/Mac .\venv\Scripts\activate # Windows
-
Instale as dependências:
streamlit pdfplumber openai matplotlib pandas
pip install -r requirements.txt
-
Configure a chave da API do OpenAI:
- Obtenha sua chave da API do OpenAI em OpenAI API.
- Substitua
'sk-xxxx'
no arquivoapp.py
pela sua chave da API.
-
Execute a aplicação Streamlit:
streamlit run app.py
-
No navegador, carregue sua fatura de cartão de crédito em formato PDF.
-
A aplicação irá extrair e mostrar o texto do PDF, categorizar as transações, gerar gráficos e fornecer insights financeiros.
Para garantir que a aplicação use sempre o tema claro, a configuração do tema está definida diretamente no código app.py
:
st.set_page_config(
layout="wide",
page_icon="💳",
page_title="Análise de Faturas de Cartão de Crédito",
initial_sidebar_state="expanded",
theme={"base": "light"}
)
Este projeto está licenciado sob a Apache-2.0 license.
Contribuições são bem-vindas! Sinta-se à vontade para abrir issues e pull requests.
Richardson Edson de Lima - LinkedIn - [Email](mailto: contatorichardsonlima at gmail dot com)