--- 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 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**