Changelog#
Todos los cambios relevantes del proyecto se documentan en este archivo.
Formato basado en Keep a Changelog y versionado SemVer.
[Unreleased]#
Added#
- Guía funcional publicada en docs:
docs/guides/sdp_funcionalidades_y_funcionamiento.mdcon resumen por rol y operación end-to-end. - Smoke autenticado MATVARD (
scripts/check_matvard_auth_endpoints.sh) integrado en deploy release con modoauto/true/falsey soporte--auth-env-file. - UX frontend reforzada en páginas clave (
dashboard,control-tower,matvard) con héroes consistentes, navegación más clara y chips de acceso rápido. Analitica(/analytics) ahora muestra un bloque "Por que del trade" en el panel de trade seleccionado con decision AP, motivo humanizado,why_not_tradey señales clave extraidas dedetails_json.Analiticaincorpora bloque "Explicacion ejecutiva" por trade con texto listo para copia, orientado a revision humana rápida y handoff operativo.- Endpoint Ops
GET /ops/binance/healthpara diagnostico rapido de conectividad Binance (server_time/account/open_orders) confail_county estado agregado. - Runbook operativo
docs/operational/binance_health_runbook.mdpara troubleshooting de401/credenciales y monitoreo de salud Binance. - Script
scripts/alert_binance_endpoint_failures.pypara alertar por Telegram cuandoops/binance/healthfalla de forma consecutiva. - Script
scripts/pve_tmp_gc.shpara limpieza de tarballssignaldashpro-*.tgzen/tmpdel host PVE. - Servicio de ingesta de microestructura Binance (
trade/depth/kline_1m) para MATVARD v3 con persistencia en tablas dedicadas (microstructure_*). - Endpoint ops
GET /ops/strategy/matvard/microstructure-healthpara salud/calidad de provider y checks de hard-stop. - Integración visual en Control Tower para
Daily Auction Brief+ salud microestructura MATVARD. - Guía operativa nueva:
docs/guides/operational/senior_code_review_optimization_plan.md. - Timer systemd para smoke de autenticacion Binance Demo (
signaldashpro-binance-demo-auth-smoke.timer). - Script operativo
deploy/ops/binance_demo_auth_smoke.shpara verificar login + estado + cuenta Binance Demo. - Soporte opcional de webhook HTTP en el smoke de Binance Demo para alertar fallos (
BINANCE_DEMO_AUTH_ALERT_*). - Bloque de acciones operativas de 24h en
TODO.mdpara seguimiento post-auditoria. - Script
scripts/run_paxg_tuning.pypara grid search de parámetrospaxg_mean_reversionsobre velas históricas M15. - Bitácora viva
docs/matvard/archive/RESUMEN_ESTRATEGIA_EN_CONSTRUCCION.mdpara trazabilidad de la evolución MATVARD. - Script
scripts/run_paxg_forward_guardrails.pypara validar forward de PAXG (veredictowatch/hold/rollback) sobre runtime settings yops/strategy/performance. - Script
scripts/run_paxg_1y_compare.pypara comparar 1 año de estrategias PAXG con velas públicas Binance M15. - Estrategia
backend/services/strategies/paxg_matvard_hybrid.pypara formalizar la variante combinada MATVARD en modo autónomo de autopilot. - Modo walk-forward en
scripts/run_paxg_timeframe_sweep.pycon ventanas train/test rodantes por timeframe y reportestorage/reports/paxg_timeframe_walkforward_binance.json. - Ranking automatico de promocion y plan de validacion forward dentro de
scripts/run_paxg_timeframe_sweep.pypara priorizar baselineM15y candidato shadowM5con veredictospromote/watch/reject. - Endpoint Ops
GET /ops/reports/paxg-timeframe/latestpara exponer en API el reporte walk-forward de PAXG conpromotion_rankingyforward_validation_plan. - Panel humanizado en
frontend/src/app/shadow-tests/page.tsxpara mostrar baseline recomendado, candidato shadow y decision rapida (promote/watch) de forma operativa y entendible. - Refinado el panel humanizado de
Shadow Testscon etiquetado legible de estrategias, timestamp del reporte y tarjetas top-3 (promover/observar/descartar) para decision operativa rapida. - Humanizacion extendida en todas las secciones de
frontend/src/app/shadow-tests/page.tsx(titulos, botones, tablas, formularios y estados) para lectura operativa mas clara y menos tecnica. - Blueprint UX global en
docs/design/archive/UX_HUMANIZATION_BLUEPRINT_2026_03_15.mdcon analisis y plan de humanizacion para todas las ventanas del frontend.
Changed#
- MATVARD avanzado en modo
strictquedó calibrado para reducir bloqueono_signalen shadow (relajación controlada demin_context_score,forecast_min_confidence,max_poc_deviation_pct,min_expected_move_pct_netyrequire_value_extreme_for_entry). scripts/run_solusdc_playbook_daily.shusaSOLUSDTpor defecto y ahora endurece autenticación con fallbackOPS_AUTH_*+ recuperación automática ante401.- Endpoint de performance (
/ops/strategy/performance) alineakpis_matvardcon estrategia activaautopilot:matvard_advanced_shadow(ya no agrega por default con shadow v1). - Corte documental "new day reset" (2026-04-09): se archivó material legacy en
docs/archive/2026-04-09_new_day_reset/y se estableció canon vNext endocs/matvard/IMPLEMENTATION_PLAN_VNEXT_SAM.md,docs/matvard/README.md,docs/TODO.mdydocs/AUDIT_NEW_DAY_2026-04-09.md. - Actualiza la calibración predeterminada (runtime defaults) para la estrategia
paxg_mean_reversiondesde perfiles P99 (0.159% vol,4.54x vol_ratio) hacia perfiles P75 más realistas (0.15% vol,1.5x vol_ratio) basados en el último análisis backtest. Analitica(/analytics) mejora la UX de búsqueda dividiendo el botón "Buscar simbolo activo" en dos acciones explícitas: "Actividad en Símbolo Actual" e "Ir al Símbolo Más Activo".Analitica(/analytics) mejora el asistente de overlays con modo explícito de fetch (lookbackvsrango visible) para reducir falsos vacíos al cambiar contexto de símbolo.Analiticamuestra estado de modo de fetch en UI (modo lookback forzado/rango visible activo|pendiente) para hacer trazable por qué no aparecen overlays.- Defaults de diagnostico en
Analitica:symbol=BTCUSDTytimeframe=M15para priorizar flujo intradia. Analiticasoporta parametros URL?symbol=...&timeframe=...para abrir contexto exacto desde enlaces operativos.- Frontend
/binanceahora soporta carga parcial (Promise.allSettled) y muestra errores por endpoint con causa (401,403,5xx) en lugar de fallo global opaco. - Frontend docs page (
/docs) ahora resuelvedocsUrlen runtime del navegador (no en scope de módulo), evitando que enlaces públicos apunten a127.0.0.1por render inicial no-local. - Config backend:
DATABASE_URLfallback saneado para no incluir contraseña embebida en código fuente. - Frontend: resolución de backend base URL unificada en
frontend/src/lib/backend.tsy reutilizada enapi.ts+login/page.tsxpara evitar drift de configuración (/api/proxyvs URL directa). - Hardening de tipado frontend en
control-towerylib/api: eliminación deany, tipado de respuestas paginadas (ApiWithMeta) y lectura segura de campos dinámicos (details). -
Compose CT110 (
deploy/docker-compose.ct110.yml) ahora respetaMATVARD_MICROSTRUCTURE_AUTO_RUN/MATVARD_ORDERBOOK_AUTO_RUNdesde env y evita sobrescribirlos con valores fijos que bloqueaban microestructura real. -
MATVARD v3 actualizado en documentación canónica de su momento (
docs/matvard/README.md,docs/matvard/ESTRATEGIA_TECNICA_RUNTIME.md,docs/matvard/PLAYBOOK_SOLUSDC_REAL.md) con estado real CT110 al 2026-03-29. docs/TODO.mdydocs/HANDOFF.mdalineados al cierre de fase MATVARD v3 y apertura de fase de revisión senior/optimización segura.- MATVARD consolidado a una sola estrategia/documentacion canónica (
autopilot:paxg_matvard_v1_shadow) bajodocs/matvard/; documentos legacy movidos adocs/matvard/archive/y navegación de MkDocs ajustada a la nueva estructura. - Documentacion principal alineada al estado real de runtime (README/HANDOFF/TODO) con fecha 2026-03-15.
- Estado de Autopilot documentado como
paxg_mean_reversionenM15paraPAXGUSDT. - Runbook de smokes actualizado para reflejar timers activos y verificacion operativa en CT110.
PAXG_DEPLOYMENT_STATUS.mdreclasificado como snapshot histórico con guía explícita hacia estado vigente.MULTI_STRATEGY_ARCHITECTURE.mdformalizado como RFC (no runbook) con nota de vigencia y criterios de activación.- Ejecutado tuning de
PAXGUSDT(grid de 6561 combinaciones) y aplicada en runtime la variante líder por score vía/settings/autopilot. - Ajuste posterior de robustez: promovida la mejor variante con mínimo 30 trades (
bb_period=20,bb_std=1.8,rsi_period=21,rsi 35/65,tp/sl 1.5/0.5) en runtime settings. - Añadida comparación explícita entre la variante líder por score y la variante líder por robustez en
PAXG_DEPLOYMENT_STATUS.md. - Ejecutado backtest anual (1 año, velas públicas Binance M15) para comparar variantes
score_leader,robust_currentyrobust_candidate_sl04, con reporte enstorage/reports/paxg_1y_variants_compare.json. - Promovida en runtime la variante anual candidata de la familia robusta ajustando
AUTOPILOT_PAXG_SL_MULTde0.5a0.4(reason:paxg_1y_candidate_sl04_2026_03_15). - Documentado procedimiento de validación forward 72h y reporte inicial en
storage/reports/paxg_forward_guardrails_latest.json. - Ejecutado comparativo anual de tres estrategias PAXG codificadas (
ma_crossover,range_breakout,paxg_mean_reversionrobustSL=0.4) con reporte enstorage/reports/paxg_1y_three_strategies_binance.json. - Integrada
paxg_matvard_hybriden runtime (config,autopilot service,autopilot router) y ampliado comparativo anual para incluir su resultado 1y. - Operativa runtime ajustada a guardrail USDT-only para PAXG en Spot Demo:
AUTOPILOT_ALLOW_SELL=false+TRADE_MANAGER_ENABLED=false+TRADE_MANAGER_AUTO_RUN=false(modomanual). - Documentación operativa alineada a estado real 2026-03-17 en
AGENTE.md,HANDOFF.mdyTODO.md. - Integrados filtros de volatilidad y volumen en estrategia
paxg_mean_reversionpara mejorar entrada de operaciones:_historical_volatility()(30-bar) yvolume_ratio(current vs 20-bar MA). Filtros opcionales y configurables via/settings/autopilotcon parámetrosAUTOPILOT_PAXG_MAX_VOLATILITY_PCTyAUTOPILOT_PAXG_MIN_VOL_RATIO. - Backtest validación (90 días, M15 PAXGUSDT Binance): filtros reducen trades 61% (31→12), mejoran win-rate +22.8pp (35.5%→58.3%), convierte PnL negativo a positivo (-2.03%→+1.67%), incrementan Profit Factor +188% (1.55→4.47).
- Desplegados filtros en runtime con valores
MAX_VOLATILITY_PCT=0.159%yMIN_VOL_RATIO=4.54xvía endpoint/settings/autopilot(2026-03-17 14:30 UTC).
Fixed#
- Corrección de parser en smoke autenticado MATVARD para endpoints con query-string compleja (
=en parámetros), evitando falsos negativos de verificación. - Fix
Analitica:Buscar simbolo activoahora limpia rango visible y fuerza consulta porlookbackpara evitar estadooverlays=0causado porrange:visiblestale al cambiar símbolo. - Fix backend
/analytics/overlay-activity: cuando se envíasymbols=..., el scope queda restringido a esos símbolos para evitar que actividad global oculte el símbolo solicitado. - Hotfix en ingesta depth Binance combinada (
@depth20@100ms) para payloads sinevent_typeexplícito y soportebids/asksademás deb/a. - Backtest anual completo (365 días M15, balance $1000, Binance PAXGUSDT): ejecutado con filtros calibrados realísticamente a partir de análisis de 1 año de datos históricos. Resultados: 257 trades (69W/188L), 26.8% WR, +$124.62 PnL (+12.46%), PF=1.23, DD=7.43%. Calibración de filtros:
MAX_VOL=0.15%(percentil 75 del dataset),MIN_VOL_RATIO=1.5x(percentil 75 vs 4.54x anterior que era percentil 99+ e inviable). Aprendizaje: posición sizing corregido para respetar balance disponible. Reporte:storage/reports/paxg_1y_with_filters_final_2026_03_17.json. - Correccion operativa en CT110: permiso de ejecucion faltante en
scripts/check_binance_demo_auth.shque causabaPermission denieden el timer de smoke. - Recuperacion de validacion de smoke Binance Demo a estado
SMOKE_OKtras ajuste de permisos. - Mitigado patrón operativo de rechazos
saldo_base_insuficienteen salidasSELLoriginadas portrade_manager, dejando el ciclo de auto-exit deshabilitado en runtime. - Hotfix
deploy/ops/binance_demo_auth_smoke.sh: ejecucion robusta conbash scripts/check_binance_demo_auth.shpara evitar nuevosrc=126por permisos y mantenersignaldashpro-binance-demo-auth-smoke.timeren verde. - Hotfix
deploy/ops/m15-autopromote.sh: fallback de credenciales (OPS_AUTH_EMAIL/OPS_AUTH_PASSWORD) cuando faltanAUTH_BOOTSTRAP_*, eliminando401 Unauthorizedrecurrentes ensignaldashpro-m15-autopromote.timer. - Fix de precedencia de entorno en
deploy/docker-compose.ct110.yml: se elimino la sobreescritura deMATVARD_MICROSTRUCTURE_AUTO_RUNyMATVARD_ORDERBOOK_AUTO_RUNdesde.env.composepara que backend ymicrostructure-workertomen estos flags del perfil runtime persistenteenv/.env.binance.demo.month. - Ajuste adicional de estabilidad:
backendqueda forzado aMATVARD_MICROSTRUCTURE_AUTO_RUN=falseyMATVARD_ORDERBOOK_AUTO_RUN=false; la ingesta/orderbook quedan solo enmicrostructure-workerpara evitar bloqueo del API server. - Resiliencia WS MATVARD:
binance_microstructure_ingestoryorderbook_engineahora usan timeouts de ping configurables por entorno (MATVARD_WS_PING_INTERVAL_SECONDS,MATVARD_WS_PING_TIMEOUT_SECONDS,MATVARD_ORDERBOOK_WS_*) con default de timeout mas tolerante para reducir reconexiones porkeepalive ping timeout. GET /ops/strategy/matvard/microstructure-healthalineado a runtime MATVARD: ahora respetaAUTOPILOT_PAXG_MAT_DEEP_PROFILE_HARD_STOP_ENABLEDy umbrales configurables (MAX_PROVIDER_ERROR_RATE,MAX_FALLBACK_RATE,MIN_COVERAGE_PCT,MAX_FEED_RECENCY_SECONDS), e incluyepolicy_enabled+thresholdsen la respuesta.- Frontend UI/UX: agregado sistema de temas globales con selector (
light,dark,neon,stich) persistente enlocalStorage, aplicado desde layout/header/nav via tokens CSS (data-theme).
Security#
- En este ajuste no se movieron credenciales entre archivos
.env; solo se retiró un default sensible hardcodeado del código backend. - Se mantiene la recomendacion de no versionar secretos y operar credenciales solo por archivos
env/*gitignored en servidor.
[0.1.0] - 2025-02-11#
Added#
- Reestructura completa de documentacion (
docs/con C4, ADR, diseno, operacion, guias). - Nuevo
rest-openapi.yaml(esqueleto) + validacion viaspectral. README.mdsimplificado con quickstart y enlaces clave.- Archivos base de gobernanza:
CONTRIBUTING.md,CHANGELOG.md,LICENSEy plantilla de PR. - Integracion documental de script de alertas operativas.
Recomendacion operativa: agregar una entrada en Unreleased en cada PR que cambie comportamiento funcional, APIs, estrategia, despliegue o runbooks.