Spaces:
Sleeping
Sleeping
| title: Sistema de Análise Financeira com IA | |
| emoji: 📈 | |
| colorFrom: blue | |
| colorTo: green | |
| sdk: gradio | |
| sdk_version: 5.44.0 | |
| app_file: app.py | |
| pinned: false | |
| license: mit | |
| short_description: Sistema de análise financeira com IA e ensemble de modelos | |
| # 📈 Sistema de Análise Financeira com IA | |
| Um sistema completo de análise financeira que combina múltiplos modelos de IA para fornecer insights precisos sobre mercados financeiros, análise de sentimento e processamento avançado de dados. | |
| ## 🚀 Funcionalidades Principais | |
| ### 🤖 Sistema Ensemble de IA | |
| - **Múltiplos Modelos**: Integração de FinBERT, RoBERTa e modelos customizados | |
| - **Votação Inteligente**: Sistema de consenso entre modelos para maior precisão | |
| - **Otimização Automática**: Ajuste dinâmico de pesos baseado na performance | |
| ### 📊 Análise de Mercado Avançada | |
| - **Swing Points**: Detecção automática de pontos de reversão | |
| - **Zonas de Confluência**: Identificação de níveis críticos de suporte/resistência | |
| - **Padrões Harmônicos**: Reconhecimento de padrões Gartley, Butterfly, Bat e Crab | |
| - **Análise Fibonacci**: Cálculos automáticos de retracement e extensão | |
| ### 💹 Análise de Sentimento | |
| - **Processamento de Texto**: Análise de notícias e relatórios financeiros | |
| - **Classificação Multi-classe**: Bullish, Bearish, Neutral com scores de confiança | |
| - **Contexto Financeiro**: Especializado em terminologia do mercado financeiro | |
| ### 🎨 Interface | |
| - **Interface Web Moderna**: Interface Gradio responsiva e intuitiva | |
| - **Tema Escuro/Claro**: Sistema de temas dinâmico com modo noturno | |
| - **Visualizações Interativas**: Gráficos e métricas em tempo real | |
| - **Design Responsivo**: Otimizado para desktop e mobile | |
| - **Feedback Visual**: Indicadores de status e progresso | |
| ### 📝 Sistema de Logging Avançado | |
| - **Armazenamento SQLite3**: Banco de dados estruturado para logs persistentes | |
| - **Interface Web**: Visualizador de logs com filtros avançados e estatísticas | |
| - **Decoradores Automáticos**: Logging automático com decoradores Python | |
| - **Métricas de Performance**: Monitoramento em tempo real com gráficos | |
| - **Categorização Inteligente**: Logs organizados por categoria e nível | |
| - **Limpeza Automática**: Gerenciamento automático de logs antigos | |
| - **Eventos do Sistema**: Rastreamento de eventos críticos e alertas | |
| ### 🧪 Sistema de Testes Robusto | |
| - **Pytest Framework**: Framework de testes otimizado e moderno | |
| - **Testes Unitários**: Cobertura completa de módulos individuais | |
| - **Testes de Integração**: Validação de fluxos completos do sistema | |
| - **Fixtures Reutilizáveis**: Setup/teardown automatizado para testes | |
| - **Mocking Avançado**: Isolamento de dependências externas | |
| - **Relatórios de Cobertura**: Análise detalhada em HTML, XML e terminal | |
| - **Testes Parametrizados**: Múltiplos cenários com dados variados | |
| - **Execução Paralela**: Testes rápidos com pytest-xdist | |
| - **Benchmarking**: Testes de performance e uso de memória | |
| - **CI/CD Ready**: Integração completa com pipelines de desenvolvimento | |
| ## 🏗️ Arquitetura do Sistema | |
| ``` | |
| 📁 Projeto/ | |
| ├── 📁 src/ # Código fonte organizado | |
| │ ├── 📁 ai/ # Modelos de IA e ensemble | |
| │ ├── 📁 analysis/ # Análises de mercado e sentimento | |
| │ ├── 📁 core/ # Funcionalidades centrais | |
| │ ├── 📁 integrations/ # Integrações externas | |
| │ ├── 📁 ui/ # Interface do usuário | |
| │ │ ├── 📄 gradio_interface.py | |
| │ │ ├── 📄 theme_manager.py | |
| │ │ └── 📄 dark_theme_components.py | |
| │ └── 📁 utils/ # Utilitários e helpers | |
| ├── 📁 config/ # Configurações do sistema | |
| ├── 📁 docs/ # Documentação completa | |
| ├── 📁 tests/ # Estrutura completa de testes | |
| │ ├── 📁 unit/ # Testes unitários | |
| │ ├── 📁 integration/ # Testes de integração | |
| │ ├── 📁 data/ # Dados de teste | |
| │ ├── 📄 conftest.py # Configurações globais | |
| │ └── 📄 test_patterns.py # Padrões e exemplos | |
| ├── 📁 scripts/ # Scripts utilitários | |
| │ └── 📁 log_analysis/ # Análise de logs | |
| ├── 📄 pytest.ini # Configuração do pytest | |
| ├── 📄 Makefile # Comandos automatizados | |
| └── 📄 app.py # Aplicação principal | |
| ``` | |
| ## 🛠️ Tecnologias Utilizadas | |
| - **Python 3.8+**: Linguagem principal | |
| - **Gradio 5.44.0**: Interface web interativa (compatível com HF Spaces) | |
| - **Transformers**: Modelos de linguagem (FinBERT, RoBERTa) | |
| - **NumPy/Pandas**: Processamento de dados | |
| - **Scikit-learn**: Machine learning | |
| - **SQLite3**: Banco de dados para logging avançado | |
| - **Plotly**: Gráficos interativos para métricas | |
| - **Threading**: Processamento assíncrono | |
| ## 📋 Pré-requisitos | |
| - Python 3.8 ou superior | |
| - 4GB+ de RAM (recomendado 8GB) | |
| - Conexão com internet para download de modelos | |
| ## 🚀 Instalação e Execução | |
| ### 1. Clone o repositório | |
| ```bash | |
| git clone <repository-url> | |
| cd hugging_face_spaces | |
| ``` | |
| ### 2. Instale as dependências | |
| ```bash | |
| pip install -r requirements.txt | |
| ``` | |
| ### 3. Execute a aplicação | |
| ```bash | |
| python app.py | |
| ``` | |
| ### 4. Acesse a interface | |
| Abra seu navegador em `http://localhost:7860` | |
| ## 🧪 Executando Testes | |
| ### Comandos Rápidos (Makefile) | |
| ```bash | |
| # Executar todos os testes | |
| make test | |
| # Testes unitários apenas | |
| make test-unit | |
| # Testes de integração | |
| make test-integration | |
| # Testes com relatório de cobertura | |
| make test-coverage | |
| # Testes rápidos (sem os lentos) | |
| make test-fast | |
| # Testes em paralelo | |
| make test-parallel | |
| ``` | |
| ### Comandos Pytest Diretos | |
| ```bash | |
| # Executar todos os testes | |
| pytest -v | |
| # Testes por categoria | |
| pytest -m unit # Apenas unitários | |
| pytest -m integration # Apenas integração | |
| pytest -m "not slow" # Excluir testes lentos | |
| # Com cobertura | |
| pytest --cov=src --cov-report=html | |
| # Teste específico | |
| pytest tests/unit/test_voting_system.py::test_majority_voting | |
| ``` | |
| ### Relatórios de Cobertura | |
| Após executar `make test-coverage`, abra `htmlcov/index.html` para ver o relatório detalhado. | |
| ## 🌐 Hugging Face Spaces | |
| Este projeto está **100% compatível** com Hugging Face Spaces: | |
| ### ✅ Correções Implementadas | |
| - **SSR Desabilitado**: `ssr_mode=False` para evitar erro 500 | |
| - **Configurações Otimizadas**: Parâmetros específicos para HF Spaces | |
| - **Detecção Automática**: Sistema detecta ambiente HF Spaces automaticamente | |
| - **Fallback Inteligente**: Configurações locais como backup | |
| ### 🚀 Deploy no HF Spaces | |
| 1. Faça fork/clone do repositório | |
| 2. Crie um novo Space no Hugging Face | |
| 3. Configure como Gradio App | |
| 4. O sistema aplicará automaticamente as configurações corretas | |
| ### 🔧 Configurações HF Spaces | |
| - **SDK**: Gradio 5.44.0 | |
| - **Python**: 3.8+ | |
| - **Arquivo Principal**: `app.py` | |
| - **SSR**: Desabilitado automaticamente | |
| ### 📋 Troubleshooting | |
| Para problemas específicos do HF Spaces, consulte: | |
| - [Guia de Troubleshooting HF Spaces](docs/huggingface_spaces_troubleshooting.md) | |
| - Configurações em `hf_spaces_config.py` | |
| ## 📖 Documentação | |
| Documentação completa disponível em: | |
| - [🏗️ **Arquitetura do Sistema**](docs/architecture.md) - Estrutura detalhada do projeto | |
| - [🔄 **Fluxograma do Sistema**](docs/system_flowchart.md) - Ciclo completo de processamento | |
| - [📊 **Diagrama de Fluxo Visual**](docs/system_flow_diagram.svg) - Visualização do fluxo de dados | |
| - [🚀 **Guia de Instalação**](docs/installation.md) - Instalação passo a passo | |
| - [📋 **Referência da API**](docs/api-reference.md) - Documentação técnica completa | |
| - [📖 **Guia do Desenvolvedor**](docs/developer-guide.md) - Instruções para desenvolvimento | |
| - [📊 **Sistema de Logging**](docs/logging_system.md) - Sistema de logs avançado | |
| - [🧪 **Documentação de Testes**](tests/README.md) - Framework de testes completo | |
| - [🔧 **Solução de Problemas**](docs/troubleshooting.md) - Resolução de problemas comuns | |
| - [🌐 **Troubleshooting HF Spaces**](docs/huggingface_spaces_troubleshooting.md) - Problemas específicos do HF Spaces | |
| ## 🔧 Configuração | |
| O sistema pode ser configurado através do arquivo `config/config.py`: | |
| ```python | |
| # Configurações dos modelos | |
| MODEL_WEIGHTS = { | |
| 'finbert': 0.4, | |
| 'roberta': 0.35, | |
| 'custom': 0.25 | |
| } | |
| # Configurações de análise | |
| SWING_DETECTION = { | |
| 'lookback_period': 5, | |
| 'min_strength': 0.3 | |
| } | |
| ``` | |
| ## 📊 Exemplos de Uso | |
| ### Análise de Sentimento | |
| ```python | |
| from src.analysis.sentiment_analysis import SentimentAnalyzer | |
| analyzer = SentimentAnalyzer() | |
| result = analyzer.analyze_text("O mercado está em alta com perspectivas positivas") | |
| print(f"Sentimento: {result['sentiment']} (Confiança: {result['confidence']:.2f})") | |
| ``` | |
| ### Análise de Mercado | |
| ```python | |
| from src.core.advanced_market_processing import AdvancedMarketProcessor | |
| processor = AdvancedMarketProcessor() | |
| result = processor.process_market_data(prices, volumes) | |
| print(f"Estrutura do mercado: {result['market_structure']}") | |
| ``` | |
| ### Sistema de Logging | |
| ```python | |
| from src.utils.logging_decorators import log_execution, quick_log | |
| from src.core.database_logger import LogLevel, LogCategory | |
| # Logging automático com decorador | |
| @log_execution(LogCategory.MARKET_ANALYSIS, log_performance=True) | |
| def analyze_market(): | |
| # Sua análise aqui | |
| return results | |
| # Logging rápido | |
| quick_log("Operação concluída", LogLevel.INFO, LogCategory.SYSTEM) | |
| ``` | |
| ### Visualização de Logs | |
| ```python | |
| from src.ui.log_viewer import create_log_viewer_interface | |
| # Criar interface de visualização | |
| interface = create_log_viewer_interface() | |
| interface.launch() | |
| ``` | |
| ## 🤝 Contribuição | |
| 1. Fork o projeto | |
| 2. Crie uma branch para sua feature (`git checkout -b feature/AmazingFeature`) | |
| 3. Commit suas mudanças (`git commit -m 'Add some AmazingFeature'`) | |
| 4. Push para a branch (`git push origin feature/AmazingFeature`) | |
| 5. Abra um Pull Request | |
| ## 📄 Licença | |
| Este projeto está licenciado sob a Licença MIT - veja o arquivo [LICENSE](LICENSE) para detalhes. | |
| ## 🆘 Suporte | |
| Para suporte e dúvidas: | |
| - Consulte a [documentação](docs/) | |
| - Abra uma [issue](../../issues) | |
| - Consulte o [guia de troubleshooting](docs/troubleshooting.md) | |
| ## 📈 Status do Projeto | |
| - ✅ Sistema Ensemble de IA implementado | |
| - ✅ Análise de mercado avançada | |
| - ✅ Sistema de logging completo | |
| - ✅ Interface web funcional | |
| - ✅ Documentação atualizada | |
| - ✅ Estrutura refatorada | |
| --- | |
| **Desenvolvido com ❤️ para análise financeira inteligente** | |