# BACKEND INVENTORY - OrbiQuant IA Trading Platform # Generado: 2025-12-08 # Sistema: NEXUS + SIMCO v2.2.0 backend: framework: Express.js + TypeScript path: apps/backend/ src: apps/backend/src/ puerto: 3001 estructura: core: path: src/core/ componentes: filters: - archivo: filters/http-exception.filter.ts descripcion: Filtro global de excepciones HTTP estado: Implementado guards: - archivo: guards/auth.guard.ts descripcion: Guard de autenticacion JWT estado: Implementado interceptors: - archivo: interceptors/transform-response.interceptor.ts descripcion: Transformador de respuestas estandar estado: Implementado middleware: - archivo: middleware/auth.middleware.ts descripcion: Middleware de autenticacion estado: Implementado - archivo: middleware/rate-limiter.ts descripcion: Rate limiting por IP/usuario estado: Implementado - archivo: middleware/error-handler.ts descripcion: Manejador global de errores estado: Implementado - archivo: middleware/not-found.ts descripcion: Handler 404 estado: Implementado websocket: - archivo: websocket/websocket.server.ts descripcion: Servidor WebSocket principal estado: Implementado - archivo: websocket/trading-stream.service.ts descripcion: Stream de precios en tiempo real estado: Implementado shared: path: src/shared/ componentes: clients: - archivo: clients/ml-engine.client.ts descripcion: Cliente HTTP para ML Engine estado: Implementado - archivo: clients/llm-agent.client.ts descripcion: Cliente HTTP para LLM Agent estado: Implementado - archivo: clients/trading-agents.client.ts descripcion: Cliente HTTP para Trading Agents estado: Implementado constants: - archivo: constants/database.constants.ts - archivo: constants/enums.constants.ts - archivo: constants/routes.constants.ts types: - archivo: types/common.types.ts utils: - archivo: utils/logger.ts descripcion: Logger Winston configurado database: - archivo: database/index.ts descripcion: Conexion PostgreSQL modulos: # ==================== AUTH ==================== - nombre: auth path: src/modules/auth/ estado: Completo epica: OQI-001 archivos: routes: auth.routes.ts controllers: - controllers/auth.controller.ts services: - services/token.service.ts - services/oauth.service.ts - services/email.service.ts - services/phone.service.ts - services/twofa.service.ts validators: - validators/auth.validators.ts types: - types/auth.types.ts endpoints: - POST /api/auth/register - POST /api/auth/login - POST /api/auth/logout - POST /api/auth/refresh - POST /api/auth/forgot-password - POST /api/auth/reset-password - POST /api/auth/verify-email - POST /api/auth/verify-phone - POST /api/auth/2fa/enable - POST /api/auth/2fa/verify - GET /api/auth/oauth/:provider - GET /api/auth/oauth/:provider/callback # ==================== USERS ==================== - nombre: users path: src/modules/users/ estado: Parcial epica: OQI-001 archivos: routes: users.routes.ts endpoints: - GET /api/users/me - PATCH /api/users/me - GET /api/users/:id # ==================== EDUCATION ==================== - nombre: education path: src/modules/education/ estado: Completo epica: OQI-002 archivos: routes: education.routes.ts controllers: - controllers/education.controller.ts services: - services/course.service.ts - services/enrollment.service.ts types: - types/education.types.ts endpoints: - GET /api/education/courses - GET /api/education/courses/:id - POST /api/education/courses/:id/enroll - GET /api/education/enrollments - PATCH /api/education/progress # ==================== TRADING ==================== - nombre: trading path: src/modules/trading/ estado: En Desarrollo epica: OQI-003 archivos: routes: trading.routes.ts controllers: - controllers/trading.controller.ts - controllers/watchlist.controller.ts - controllers/paper-trading.controller.ts - controllers/indicators.controller.ts - controllers/alerts.controller.ts services: - services/market.service.ts - services/binance.service.ts - services/watchlist.service.ts - services/paper-trading.service.ts - services/indicators.service.ts - services/alerts.service.ts - services/cache.service.ts types: - types/market.types.ts endpoints: - GET /api/trading/symbols - GET /api/trading/symbols/:symbol/candles - GET /api/trading/symbols/:symbol/ticker - GET /api/trading/watchlists - POST /api/trading/watchlists - POST /api/trading/watchlists/:id/items - DELETE /api/trading/watchlists/:id/items/:itemId - GET /api/trading/paper/balance - POST /api/trading/paper/order - GET /api/trading/paper/positions - GET /api/trading/paper/history # ==================== INVESTMENT ==================== - nombre: investment path: src/modules/investment/ estado: Parcial epica: OQI-004 archivos: routes: investment.routes.ts controllers: - controllers/investment.controller.ts services: - services/product.service.ts - services/account.service.ts - services/transaction.service.ts endpoints: - GET /api/investment/products - GET /api/investment/accounts - POST /api/investment/accounts - POST /api/investment/accounts/:id/deposit - POST /api/investment/accounts/:id/withdraw # ==================== PAYMENTS ==================== - nombre: payments path: src/modules/payments/ estado: Parcial epica: OQI-005 archivos: routes: payments.routes.ts controllers: - controllers/payments.controller.ts services: - services/stripe.service.ts - services/wallet.service.ts - services/subscription.service.ts types: - types/payments.types.ts endpoints: - POST /api/payments/create-checkout - POST /api/payments/webhook - GET /api/payments/wallet - GET /api/payments/subscriptions - POST /api/payments/subscriptions/cancel # ==================== ML ==================== - nombre: ml path: src/modules/ml/ estado: Implementado epica: OQI-006 archivos: routes: ml.routes.ts controllers: - controllers/ml.controller.ts - controllers/ml-overlay.controller.ts services: - services/ml-integration.service.ts - services/ml-overlay.service.ts endpoints: - GET /api/ml/signals/:symbol - GET /api/ml/predictions/:symbol - GET /api/ml/overlay/:symbol - GET /api/ml/models # ==================== LLM ==================== - nombre: llm path: src/modules/llm/ estado: En Desarrollo epica: OQI-007 archivos: routes: llm.routes.ts controllers: - controllers/llm.controller.ts services: - services/llm.service.ts endpoints: - POST /api/llm/chat - GET /api/llm/conversations - GET /api/llm/conversations/:id - DELETE /api/llm/conversations/:id # ==================== PORTFOLIO ==================== - nombre: portfolio path: src/modules/portfolio/ estado: Inicial epica: OQI-008 archivos: routes: portfolio.routes.ts controllers: - controllers/portfolio.controller.ts services: - services/portfolio.service.ts endpoints: - GET /api/portfolio - POST /api/portfolio/rebalance - GET /api/portfolio/projections # ==================== AGENTS ==================== - nombre: agents path: src/modules/agents/ estado: Planificado epica: OQI-004 archivos: routes: agents.routes.ts controllers: - controllers/agents.controller.ts services: - services/agents.service.ts endpoints: - GET /api/agents - GET /api/agents/:id/performance # ==================== ADMIN ==================== - nombre: admin path: src/modules/admin/ estado: Inicial archivos: routes: admin.routes.ts endpoints: - GET /api/admin/stats - GET /api/admin/users resumen: total_modulos: 12 total_controllers: 18 total_services: 28 total_endpoints: 55+ modulos_completos: [auth, education, ml] modulos_en_desarrollo: [trading, investment, payments, llm, portfolio] modulos_planificados: [agents, admin] dependencias_externas: - ml-engine: puerto 8000 (FastAPI) - llm-agent: puerto 8001 (FastAPI) - trading-agents: puerto 8002 (FastAPI) - redis: puerto 6379 - postgresql: puerto 5432 ultima_actualizacion: 2025-12-08 actualizado_por: NEXUS-System