Spaces:
Sleeping
Sleeping
Update README.md
Browse files
README.md
CHANGED
|
@@ -1,39 +1,122 @@
|
|
| 1 |
-
|
| 2 |
-
|
| 3 |
-
|
| 4 |
-
|
| 5 |
-
colorTo: purple
|
| 6 |
-
sdk: gradio
|
| 7 |
-
sdk_version: 4.24.0
|
| 8 |
-
app_file: app.py
|
| 9 |
-
pinned: false
|
| 10 |
-
---
|
| 11 |
|
| 12 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 13 |
|
| 14 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 15 |
|
| 16 |
-
|
| 17 |
|
| 18 |
-
|
|
|
|
|
|
|
| 19 |
|
| 20 |
-
- 📈 Histórico de preços de múltiplas ações
|
| 21 |
-
- 🔗 Matriz de correlação entre ativos
|
| 22 |
-
- 📊 Retornos acumulados
|
| 23 |
-
- ⚖️ Otimização de portfólio
|
| 24 |
-
- 📋 Estatísticas descritivas
|
| 25 |
|
| 26 |
-
|
|
|
|
| 27 |
|
| 28 |
-
1. Selecione as ações desejadas
|
| 29 |
-
2. Defina o período de análise
|
| 30 |
-
3. Clique em "Analisar"
|
| 31 |
-
4. Explore os gráficos e resultados
|
| 32 |
|
| 33 |
-
|
|
|
|
| 34 |
|
| 35 |
-
|
| 36 |
|
| 37 |
-
## ⚠️ Nota
|
| 38 |
|
| 39 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
Painel de Análise de Portfólio
|
| 2 |
+
Visão Geral
|
| 3 |
+
Este projeto é um painel interativo baseado em Gradio para análise de portfólios financeiros, replicando as visualizações de um notebook Colab sobre teoria de portfólios. Ele utiliza a biblioteca yfinance para obter dados históricos de ações, realiza simulações Monte Carlo, calcula retornos, correlações, Valor em Risco (VaR) e apresenta visualizações como a fronteira eficiente e a evolução do portfólio. O painel permite personalizar tickers, intervalos de datas, número de simulações e investimento inicial.
|
| 4 |
+
Funcionalidades
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 5 |
|
| 6 |
+
Preços Históricos: Gráfico interativo Plotly com o histórico de preços das ações.
|
| 7 |
+
Histórico de Retornos: Retornos logarítmicos ao longo do tempo para os ativos selecionados.
|
| 8 |
+
Matriz de Correlação: Mapa de calor das correlações entre retornos dos ativos.
|
| 9 |
+
Fronteira Eficiente: Gráfico de dispersão de simulações Monte Carlo com o portfólio ótimo destacado.
|
| 10 |
+
Evolução do Portfólio: Acompanha o valor do portfólio ao longo do tempo com base em pesos otimizados.
|
| 11 |
+
Retornos Diários: Visualiza os retornos diários do portfólio com linha de média.
|
| 12 |
+
Análise de VaR: VaR histórico e Monte Carlo com histogramas e tabela de resumo.
|
| 13 |
+
Estatísticas: Estatísticas descritivas dos retornos e métricas de VaR.
|
| 14 |
|
| 15 |
+
Requisitos
|
| 16 |
+
O aplicativo requer os seguintes pacotes Python, listados no arquivo requirements.txt:
|
| 17 |
+
gradio
|
| 18 |
+
pandas
|
| 19 |
+
yfinance
|
| 20 |
+
numpy
|
| 21 |
+
matplotlib
|
| 22 |
+
plotly
|
| 23 |
+
scipy
|
| 24 |
+
seaborn
|
| 25 |
|
| 26 |
+
Instruções de Configuração
|
| 27 |
|
| 28 |
+
Clonar o Repositório (se hospedado no Git):
|
| 29 |
+
git clone <url-do-repositório>
|
| 30 |
+
cd painel-analise-portfolio
|
| 31 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 32 |
|
| 33 |
+
Instalar Dependências:
|
| 34 |
+
pip install -r requirements.txt
|
| 35 |
|
|
|
|
|
|
|
|
|
|
|
|
|
| 36 |
|
| 37 |
+
Executar Localmente:
|
| 38 |
+
python app.py
|
| 39 |
|
| 40 |
+
Isso inicia a interface Gradio localmente, acessível via navegador (ex.: http://localhost:7860).
|
| 41 |
|
|
|
|
| 42 |
|
| 43 |
+
Como Usar
|
| 44 |
+
|
| 45 |
+
Acessar o Painel:
|
| 46 |
+
|
| 47 |
+
Abra a interface Gradio (local ou hospedada).
|
| 48 |
+
Insira os parâmetros:
|
| 49 |
+
Tickers: Símbolos das ações separados por vírgula (ex.: BBAS3.SA,ITSA4.SA,TAEE11.SA,TTEN3.SA,BPAC11.SA,^BVSP).
|
| 50 |
+
Data Inicial: Formato AAAA-MM-DD (ex.: 2012-01-01).
|
| 51 |
+
Data Final: Formato AAAA-MM-DD (ex.: 2024-07-31).
|
| 52 |
+
Número de Simulações: Para Monte Carlo (padrão: 50.000).
|
| 53 |
+
Investimento Inicial: Em reais (padrão: 35.000).
|
| 54 |
+
|
| 55 |
+
|
| 56 |
+
Clique em Executar Análise para gerar as visualizações.
|
| 57 |
+
|
| 58 |
+
|
| 59 |
+
Explorar Visualizações:
|
| 60 |
+
|
| 61 |
+
Navegue pelas abas: Preços Históricos, Histórico de Retornos, Matriz de Correlação, Fronteira Eficiente, Evolução do Portfólio, Retornos Diários, Análise de VaR e Estatísticas.
|
| 62 |
+
Passe o mouse sobre os gráficos Plotly para detalhes interativos (zoom, pan, etc.).
|
| 63 |
+
|
| 64 |
+
|
| 65 |
+
|
| 66 |
+
Implantação no Hugging Face Spaces
|
| 67 |
+
Para implantar o painel no Hugging Face Spaces:
|
| 68 |
+
|
| 69 |
+
Criar um Space:
|
| 70 |
+
|
| 71 |
+
Acesse huggingface.co/new-space.
|
| 72 |
+
Selecione Gradio como SDK.
|
| 73 |
+
Nomeie o Space (ex.: painel-analise-portfolio).
|
| 74 |
+
Defina a visibilidade (Público ou Privado).
|
| 75 |
+
|
| 76 |
+
|
| 77 |
+
Fazer Upload dos Arquivos:
|
| 78 |
+
|
| 79 |
+
Envie app.py e requirements.txt.
|
| 80 |
+
Confirme as alterações para iniciar o build.
|
| 81 |
+
|
| 82 |
+
|
| 83 |
+
Acessar o Painel:
|
| 84 |
+
|
| 85 |
+
Após o build, acesse a URL pública fornecida pelo Hugging Face.
|
| 86 |
+
Opcionalmente, ative GPU nas configurações do Space para simulações Monte Carlo mais rápidas.
|
| 87 |
+
|
| 88 |
+
|
| 89 |
+
|
| 90 |
+
Solução de Problemas
|
| 91 |
+
|
| 92 |
+
Nenhum Dado Carregado:
|
| 93 |
+
Verifique se os tickers são válidos no Yahoo Finance (ex.: BBAS3.SA para ações brasileiras, ^BVSP para IBOVESPA).
|
| 94 |
+
Confirme que o intervalo de datas está dentro dos dados disponíveis (até 21/09/2025, data atual).
|
| 95 |
+
|
| 96 |
+
|
| 97 |
+
Gráficos Não Exibidos:
|
| 98 |
+
Consulte os logs do Hugging Face Space para erros (ex.: dependências ausentes).
|
| 99 |
+
Reduza o num_simulations (ex.: para 10.000) se houver problemas de memória.
|
| 100 |
+
|
| 101 |
+
|
| 102 |
+
Problemas com API:
|
| 103 |
+
O Yahoo Finance pode falhar para alguns tickers. Teste com menos tickers ou tente novamente após um intervalo.
|
| 104 |
+
|
| 105 |
+
|
| 106 |
+
|
| 107 |
+
Contribuições
|
| 108 |
+
Contribuições são bem-vindas! Para contribuir:
|
| 109 |
+
|
| 110 |
+
Faça um fork do repositório.
|
| 111 |
+
Crie uma branch para sua funcionalidade (git checkout -b nome-funcionalidade).
|
| 112 |
+
Faça commit das alterações (git commit -m "Adiciona funcionalidade").
|
| 113 |
+
Envie para a branch (git push origin nome-funcionalidade).
|
| 114 |
+
Abra um Pull Request.
|
| 115 |
+
|
| 116 |
+
Licença
|
| 117 |
+
Este projeto está licenciado sob a Licença MIT.
|
| 118 |
+
Agradecimentos
|
| 119 |
+
|
| 120 |
+
Desenvolvido com Gradio para a interface interativa.
|
| 121 |
+
Utiliza yfinance para dados de ações.
|
| 122 |
+
Inspirado em conceitos de teoria de portfólios e simulações Monte Carlo.
|