- Configure workspace Git repository with comprehensive .gitignore - Add Odoo as submodule for ERP reference code - Include documentation: SETUP.md, GIT-STRUCTURE.md - Add gitignore templates for projects (backend, frontend, database) - Structure supports independent repos per project/subproject level Workspace includes: - core/ - Reusable patterns, modules, orchestration system - projects/ - Active projects (erp-suite, gamilit, trading-platform, etc.) - knowledge-base/ - Reference code and patterns (includes Odoo submodule) - devtools/ - Development tools and templates - customers/ - Client implementations template 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
12 KiB
12 KiB
OrbiQuant IA - Services Architecture
Servicios Principales
Puertos de Desarrollo
| Servicio | Puerto | Descripción |
|---|---|---|
| Frontend | 5173 | React + Vite |
| Backend | 3000 | Express.js API |
| ML Engine | 8001 | FastAPI - Señales ML |
| Data Service | 8002 | FastAPI - Datos de mercado |
| LLM Agent | 8003 | FastAPI - Copiloto IA |
| Trading Agents | 8004 | FastAPI - Atlas/Orion/Nova |
| PostgreSQL | 5432 | Base de datos |
| Redis | 6379 | Cache y pub/sub |
| Ollama | 11434 | LLM local |
| Ollama WebUI | 3001 | UI para testing LLM |
Arquitectura de Comunicación
┌─────────────────────────────────────────────────────────────────────────────┐
│ FRONTEND (5173) │
│ React + TailwindCSS │
└────────────────┬────────────────┬────────────────┬──────────────────────────┘
│ │ │
▼ ▼ ▼
┌────────────────────┐ ┌─────────────────┐ ┌─────────────────────────────────┐
│ BACKEND (3000) │ │ LLM AGENT (8003)│ │ DATA SERVICE (8002) │
│ Express.js │ │ FastAPI │ │ FastAPI │
│ - Auth │ │ - Chat │ │ - Precios real-time │
│ - Users │ │ - Análisis │ │ - Históricos │
│ - Investment │ │ - Estrategias │ │ - WebSocket feeds │
│ - Payments │ │ - Trading Tools│ │ │
└─────────┬──────────┘ └────────┬────────┘ └─────────────────────────────────┘
│ │
│ │
▼ ▼
┌──────────────────────────────────────────────────────────────────────────────┐
│ ML ENGINE (8001) │
│ FastAPI │
│ ┌─────────────────┐ ┌─────────────────┐ ┌─────────────────────────────────┐ │
│ │ AMDDetector │ │ RangePredictor │ │ TPSLClassifier │ │
│ │ (fases mercado)│ │ (ΔHigh/ΔLow) │ │ (TP vs SL prob) │ │
│ └─────────────────┘ └─────────────────┘ └─────────────────────────────────┘ │
│ ┌─────────────────┐ ┌─────────────────┐ ┌─────────────────────────────────┐ │
│ │ SignalGenerator │ │ Backtesting │ │ Walk-Forward Training │ │
│ └─────────────────┘ └─────────────────┘ └─────────────────────────────────┘ │
└──────────────────────────────────┬───────────────────────────────────────────┘
│
▼
┌──────────────────────────────────────────────────────────────────────────────┐
│ TRADING AGENTS (8004) │
│ FastAPI │
│ ┌─────────────────┐ ┌─────────────────┐ ┌─────────────────────────────────┐ │
│ │ ATLAS │ │ ORION │ │ NOVA │ │
│ │ Conservador │ │ Moderado │ │ Agresivo │ │
│ │ Mean Reversion │ │ Trend Following │ │ Momentum │ │
│ │ Grid Trading │ │ Breakouts │ │ Scalping │ │
│ └─────────────────┘ └─────────────────┘ └─────────────────────────────────┘ │
│ │ │
│ ▼ │
│ ┌───────────────────────────────────────────────────────────────────────┐ │
│ │ BINANCE CLIENT (Testnet/Mainnet) │ │
│ └───────────────────────────────────────────────────────────────────────┘ │
└──────────────────────────────────────────────────────────────────────────────┘
│
▼
┌──────────────────────────────────────────────────────────────────────────────┐
│ OLLAMA (11434) │
│ LLM Local con GPU │
│ ┌───────────────────────────────────────────────────────────────────────┐ │
│ │ Llama 3 8B (RTX 5060 Ti) │ │
│ └───────────────────────────────────────────────────────────────────────┘ │
└──────────────────────────────────────────────────────────────────────────────┘
Flujo de Datos
1. Usuario solicita señal de trading
Frontend → LLM Agent → ML Engine → SignalGenerator
↓
LLM Agent interpreta y responde en lenguaje natural
2. Trading automático
ML Engine (señales) → Trading Agents (filtros + estrategia) → Binance (ejecución)
↓
Backend (registro) → PostgreSQL (persistencia)
3. Chat con copiloto
Frontend → LLM Agent → Ollama (Llama 3) → Tools (ML Engine, Backend, Data Service)
↓
Respuesta enriquecida con datos reales
URLs de Integración
Desarrollo Local
# Frontend (.env)
VITE_API_URL=http://localhost:3000
VITE_WS_URL=ws://localhost:3000
VITE_LLM_URL=http://localhost:8003
# Backend (.env)
ML_ENGINE_URL=http://localhost:8001
DATA_SERVICE_URL=http://localhost:8002
LLM_AGENT_URL=http://localhost:8003
TRADING_AGENTS_URL=http://localhost:8004
DATABASE_URL=postgresql://postgres:postgres@localhost:5432/orbiquant
REDIS_URL=redis://localhost:6379
# ML Engine (.env)
DATABASE_URL=postgresql://postgres:postgres@localhost:5432/orbiquant
REDIS_URL=redis://localhost:6379/0
# LLM Agent (.env)
LLM_PROVIDER=ollama
OLLAMA_BASE_URL=http://localhost:11434
LLM_MODEL=llama3:8b
ML_ENGINE_URL=http://localhost:8001
BACKEND_URL=http://localhost:3000
DATA_SERVICE_URL=http://localhost:8002
# Trading Agents (.env)
ML_ENGINE_URL=http://localhost:8001
DATABASE_URL=postgresql://postgres:postgres@localhost:5432/orbiquant
REDIS_URL=redis://localhost:6379/2
BINANCE_TESTNET=true
Docker Compose
# Dentro de la red Docker (orbiquant-network)
ML_ENGINE_URL=http://ml-engine:8000
LLM_AGENT_URL=http://llm-agent:8000
TRADING_AGENTS_URL=http://trading-agents:8000
OLLAMA_BASE_URL=http://ollama:11434
DATABASE_URL=postgresql://postgres:postgres@postgres:5432/orbiquant
REDIS_URL=redis://redis:6379
Comandos de Inicio
Desarrollo (Sin Docker)
# Terminal 1 - PostgreSQL y Redis
docker-compose -f docker-compose.dev.yml up postgres redis
# Terminal 2 - ML Engine
cd apps/ml-engine
source venv/bin/activate # o conda activate orbiquant-ml
uvicorn src.api.main:app --reload --port 8001
# Terminal 3 - LLM Agent + Ollama
docker-compose -f apps/llm-agent/docker-compose.ollama.yml up -d
cd apps/llm-agent
source venv/bin/activate
uvicorn src.main:app --reload --port 8003
# Terminal 4 - Trading Agents
cd apps/trading-agents
source venv/bin/activate
uvicorn src.api.main:app --reload --port 8004
# Terminal 5 - Backend
cd apps/backend
npm run dev
# Terminal 6 - Frontend
cd apps/frontend
npm run dev
Producción (Docker Compose)
# Iniciar todos los servicios
docker-compose -f docker-compose.services.yml up -d
# Ver logs
docker-compose -f docker-compose.services.yml logs -f
# Detener
docker-compose -f docker-compose.services.yml down
Health Checks
# ML Engine
curl http://localhost:8001/health
# LLM Agent
curl http://localhost:8003/health
# Trading Agents
curl http://localhost:8004/health
# Ollama
curl http://localhost:11434/api/tags
# Backend
curl http://localhost:3000/health
# Data Service
curl http://localhost:8002/health
Recursos del Sistema
GPU (RTX 5060 Ti - 16GB VRAM)
| Servicio | VRAM Usado | Notas |
|---|---|---|
| Ollama (Llama 3 8B) | ~10GB | Modelo principal |
| XGBoost CUDA | ~2GB | Entrenamiento ML |
| Reserva | ~4GB | Otros procesos |
Memoria RAM Recomendada
- Desarrollo: 16GB mínimo
- Producción: 32GB recomendado
CPU
- 4 cores mínimo
- 8 cores recomendado para múltiples agentes
Monitoreo
Métricas Clave
- ML Engine: Latencia de predicción, precisión de señales
- LLM Agent: Tiempo de respuesta, tokens/segundo
- Trading Agents: Win rate, drawdown, PnL
- Sistema: CPU, RAM, GPU utilization
Logs
# Ubicación de logs
apps/ml-engine/logs/
apps/llm-agent/logs/
apps/trading-agents/logs/
apps/backend/logs/
Documentación de Servicios - OrbiQuant IA Actualizado: 2025-12-07