Vibe-Trading: conectar investigación en lenguaje natural, backtesting y herramientas de trading a un AI Agent

Una introducción a HKUDS/Vibe-Trading: posicionamiento, capacidades, instalación, fuentes de datos, flujo de backtesting, Shadow Account, integración MCP y límites de seguridad.

HKUDS/Vibe-Trading es un espacio de trabajo open source de AI Agent para investigación de trading. Su posicionamiento es directo: un comando para darle al agente capacidades amplias de investigación de trading. Combina preguntas en lenguaje natural, carga de datos de mercado, generación de estrategias, backtesting, reportes, herramientas MCP y memoria persistente de investigación. El objetivo no es ganar dinero mágicamente por ti, sino convertir preguntas de investigación en flujos de análisis ejecutables, inspeccionables y revisables.

Más exactamente, Vibe-Trading encaja en tres tipos de trabajo. Primero, convertir rápidamente una idea de trading en una tarea de backtest. Segundo, permitir que equipos multi-agent investiguen inversión, cuantitativo, riesgo, cripto y macro. Tercero, importar tus propios registros de trading, analizar sesgos de comportamiento y generar un reporte comparativo de Shadow Account. También admite conectores de brokers y capacidades limitadas de órdenes, pero esa parte debe entenderse dentro de límites estrictos: el proyecto no custodia fondos, la ejecución ocurre en brokers autorizados por ti y antes de usarlo hay que comprender riesgos, permisos y mecanismos de auditoría.

Veamos el proyecto desde la perspectiva de desarrolladores y usuarios de investigación cuantitativa.

Qué problema resuelve Vibe-Trading

Muchas herramientas de trading con IA se quedan en “que el modelo escriba un análisis” o “generar un fragmento de código de estrategia”. Vibe-Trading intenta completar más partes del ciclo: entender la pregunta, elegir fuentes de datos, obtener contexto de mercado, generar o llamar herramientas, ejecutar backtests, producir métricas y reportes, y conservar el proceso para poder retomarlo más tarde.

El flujo general es:

  1. El usuario plantea una pregunta en lenguaje natural, por ejemplo “backtest a BTC-USDT 20/50 moving-average strategy”.
  2. El agente selecciona skills, herramientas, fuentes de datos o un swarm preset relevante.
  3. La capa de carga obtiene datos de A-share, Hong Kong, Estados Unidos, cripto, futuros, forex o datos locales.
  4. El sistema genera código de estrategia testeable y llama las herramientas de backtesting o análisis correspondientes.
  5. Devuelve retornos, drawdown, comparación con benchmark, reportes de validación, run cards y artifacts reutilizables.

Eso lo hace más parecido a una consola de investigación de trading que a un chatbot simple.

Capacidades principales

El README del proyecto agrupa las capacidades en varios módulos:

  • Agente de trading auto-mejorable: investigación de mercado en lenguaje natural, borradores de estrategia, análisis de archivos y web, y workflows con memoria.
  • Equipos de trading multi-agent: presets para inversión, cuantitativo, cripto, macro y riesgo, con progreso en ejecución y reportes persistentes.
  • Datos y backtesting cross-market: A-share, Hong Kong, Estados Unidos, cripto, futuros y forex, con fallback de datos, backtests compuestos, datos PIT y artifacts de validación.
  • Shadow Account: extrae patrones de comportamiento desde registros reales, genera una estrategia sombra basada en reglas y la compara con la ruta de trading real.
  • Alpha Zoo: cientos de factores cuantitativos integrados, evaluables con un comando para IC, IR y clasificación alive/reversed/dead.
  • Integración MCP: expone capacidades de investigación de trading a clientes compatibles con MCP como Claude Desktop, Cursor y OpenClaw.

La cobertura es amplia. En una primera integración, no conviene activar todo. Una ruta más estable es correr primero un backtest en lenguaje natural y después evaluar fuentes de datos, reportes, Shadow Account e integración MCP.

Instalación rápida

La ruta más sencilla es instalar el paquete de PyPI:

1
pip install vibe-trading-ai

Después de instalar, hay tres comandos principales:

1
2
3
vibe-trading      # interactive CLI / TUI
vibe-trading serve # start the FastAPI web service
vibe-trading-mcp  # start the MCP server

Para una primera ejecución:

1
2
vibe-trading init
vibe-trading run -p "Backtest a BTC-USDT 20/50 moving-average strategy for 2024 and summarize return and drawdown"

Si vienes de una versión antigua, el README indica que 0.1.10 pasó a LangChain 1.x. Si aparecen problemas de import después de actualizar sobre una instalación anterior, recrea el entorno virtual o ejecuta:

1
pip install --force-reinstall vibe-trading-ai

Ruta con Docker

Para probar rápido, puedes usar Docker:

1
2
3
4
5
git clone https://github.com/HKUDS/Vibe-Trading.git
cd Vibe-Trading
cp agent/.env.example agent/.env
# Edit agent/.env and set your LLM provider and API key
docker compose up --build

Luego abre:

1
http://localhost:8899

Docker publica el backend en 127.0.0.1:8899 por defecto y ejecuta la app con un usuario no root dentro del contenedor. Conviene mantener esos valores seguros. Si expones la API a una LAN o a internet, configura un API_AUTH_KEY fuerte y envía:

1
Authorization: Bearer <your-api-key>

Si la app dentro de Docker debe acceder a Ollama en el host, no uses localhost:11434. Dentro del contenedor, localhost apunta al propio contenedor. El proyecto usa por defecto:

1
http://host.docker.internal:11434

Instalación local para desarrollo

Si quieres modificar el código o usar la CLI completa, instala desde el código fuente:

1
2
3
4
5
6
7
git clone https://github.com/HKUDS/Vibe-Trading.git
cd Vibe-Trading
python -m venv .venv
source .venv/bin/activate
pip install -e .
cp agent/.env.example agent/.env
vibe-trading

En Windows PowerShell, activa el entorno virtual con:

1
.\.venv\Scripts\Activate.ps1

La Web UI puede iniciarse por separado:

1
vibe-trading serve --port 8899

Para el servidor de desarrollo frontend:

1
2
3
cd frontend
npm install
npm run dev

La URL frontend predeterminada es:

1
http://localhost:5899

Variables de entorno

Vibe-Trading necesita un LLM provider. El README menciona OpenRouter, OpenAI, DeepSeek, Gemini, Groq, DashScope/Qwen, Zhipu, Moonshot/Kimi, MiniMax, Xiaomi MIMO, Z.ai y Ollama local.

Variables comunes:

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
LANGCHAIN_PROVIDER
<PROVIDER>_API_KEY
<PROVIDER>_BASE_URL
LANGCHAIN_MODEL_NAME
TUSHARE_TOKEN
TIMEOUT_SECONDS
API_AUTH_KEY
VIBE_TRADING_ENABLE_SHELL_TOOLS
VIBE_TRADING_ALLOWED_FILE_ROOTS
VIBE_TRADING_ALLOWED_RUN_ROOTS
CONTENT_FILTER_WARNING_THRESHOLD

API_AUTH_KEY es importante en despliegues de red. VIBE_TRADING_ENABLE_SHELL_TOOLS debe activarse con cuidado porque involucra shell-capable tools. Un flujo local normal de investigación no necesita activar capacidades de alto riesgo desde el inicio.

El proyecto también admite la ruta OpenAI Codex OAuth:

1
vibe-trading provider login openai-codex

Esta ruta usa ChatGPT OAuth y no OPENAI_API_KEY.

Fuentes de datos y fallback

Una parte práctica de Vibe-Trading es su capa de carga de datos. El README dice que actualmente tiene 18 fuentes de datos de mercado, cubriendo:

  • A-share: tencent, mootdx, eastmoney, baostock, akshare, tushare, local
  • Acciones de EE. UU.: yahoo, stooq, sina, eastmoney, yfinance, tiingo, fmp, finnhub, alphavantage, akshare, local
  • Acciones de Hong Kong: eastmoney, yahoo, futu, yfinance, akshare, local
  • Cripto: okx, ccxt, yfinance, local
  • Futuros, fondos, macro y forex: principalmente mediante tushare, akshare y local

Con source: "auto", el loader hace fallback según mercado y riesgo de bloqueo por IP. Para usuarios comunes, esto es más cómodo que manejar manualmente la disponibilidad de cada fuente. Para investigación seria, aun así conviene registrar la fuente real usada, el rango temporal, el método de ajuste y la lógica de datos faltantes.

Si tienes tus propios datos históricos, puedes usar el prefijo local: para conectar CSV, Parquet o DuckDB. Hay que recordar que la capa loader de Vibe-Trading está pensada para point-in-time historical bars, no para ticks en tiempo real ni profundidad de libro de órdenes. El trading y las cotizaciones en tiempo real deben pasar por conectores de brokers.

Backtesting y flujo de investigación

El uso más común es hacer que el agente convierta una pregunta de investigación en un flujo ejecutable:

1
vibe-trading run -p "Backtest a BTC-USDT 20/50 moving-average strategy for 2024, summarize return and drawdown, then export the report"

Para el Alpha Zoo integrado, puedes ejecutar un bench de factores directamente:

1
vibe-trading alpha bench --zoo gtja191 --universe csi300 --period 2018-2025 --top 20

La idea no es reemplazar una plataforma cuantitativa rigurosa, sino ofrecer una entrada rápida a la investigación: primero correr la hipótesis y luego decidir si el resultado merece investigación, auditoría y producción más estrictas.

Shadow Account: inferir patrones desde registros de trading

Shadow Account es una de las funciones más distintivas de Vibe-Trading. No parte de una estrategia ideal, sino de tus registros reales:

1
2
vibe-trading --upload trades_export.csv
vibe-trading run -p "Analyze my trading behavior, extract my shadow strategy, and compare it with my actual trades"

Un flujo típico incluye:

  1. Leer registros exportados por brokers, como Tonghuashun, Eastmoney, Futu o CSV genérico.
  2. Generar un perfil de comportamiento: días de tenencia, tasa de acierto, ratio PnL, drawdown, disposition effect, overtrading, persecución de momentum y anchoring.
  3. Extraer reglas recurrentes de entrada y salida.
  4. Ejecutar un backtest con un Shadow Account basado en reglas y señalar rupturas de reglas, salidas tempranas, señales perdidas y rutas alternativas.
  5. Generar un reporte HTML/PDF para revisión y archivo.

Esta función sirve mejor para descubrir sesgos sistemáticos en tu propio comportamiento de trading que para emitir la siguiente orden. Es más estable como herramienta de revisión que como motor de decisión en tiempo real.

Integración MCP y Agent

Vibe-Trading puede funcionar como MCP server:

1
vibe-trading-mcp

Eso permite conectarlo a clientes compatibles con MCP y exponer datos de mercado, backtesting, generación de reportes, Shadow Account y capacidades similares como herramientas para un agente existente. Para quien ya usa Claude Desktop, Cursor u otros workflows de agentes, esto es más natural que abrir una app independiente.

La integración MCP también amplía la superficie de permisos. Lectura de archivos, código generado, shell tools, conectores de brokers y API keys necesitan límites claros. En despliegues remotos, confirma API_AUTH_KEY, raíces de archivos permitidas, directorios de ejecución y switches de shell tools.

Actualizaciones recientes que vale la pena mirar

El README de Vibe-Trading cambia con frecuencia. Algunos cambios recientes muestran que el proyecto está pasando de “funciona” a “tiene límites más claros y runtime más estable”:

  • 2026-07-02: aceleración de cálculo de factores, y los subprocesos de backtest generados solo heredan un entorno allowlisted, reduciendo la exposición de secrets del proceso padre.
  • 2026-07-01: valores predeterminados más estrictos para API, Docker y desarrollo frontend, además de correcciones de dependencias frontend y CSP.
  • 2026-06-30: el mismo Agent session runtime puede conectarse a 16 canales de mensajería, incluidos Telegram, Slack, Discord, Matrix, WhatsApp, Feishu, DingTalk, Teams y email.
  • 2026-06-29: live advisory safety broker-agnostic y conector Trading 212 read-only.
  • 2026-06-19: v0.1.10 amplió la capa global de datos a 18 fuentes de mercado y 18 herramientas read-only.

En proyectos así, el peligro es que las capacidades crezcan mientras los límites se vuelven borrosos. Las actualizaciones recientes muestran trabajo en seguridad, aislamiento de runtime, fallback de datos, estado frontend y canales de mensajería. Eso es más importante que simplemente acumular funciones.

Para quién es, y para quién no

Vibe-Trading es adecuado para:

  • Investigadores cuantitativos que quieren generar flujos de investigación y backtesting desde lenguaje natural.
  • Desarrolladores que quieren integrar capacidades de investigación de trading en workflows MCP / Agent.
  • Inversores individuales que quieren revisar sus registros y detectar sesgos de comportamiento.
  • Usuarios técnicos que evalúan fuentes de datos multi-mercado, Alpha Zoo y equipos de investigación swarm.

No es adecuado para:

  • Usuarios que esperan “ganancias automáticas al instalarlo”.
  • Personas que no entienden calidad de datos, sesgo de backtest y riesgo de trading.
  • Quienes quieren conectar estrategias no auditadas directamente a cuentas con dinero real.
  • Usuarios que no quieren configurar API keys, límites de permisos y entorno local.

La advertencia clave: los resultados de backtest no son garantía de rentabilidad, y la salida del agente no es asesoramiento financiero. Cualquier operación en vivo debe tener revisión humana, límites de riesgo, registros de auditoría y un mecanismo de parada inmediata.

Resumen

El valor de Vibe-Trading está en llevar la investigación de trading de “el modelo escribe unos párrafos” a “datos, herramientas, backtests, reportes y memoria forman un flujo revisable”. Su alcance es amplio: investigación en lenguaje natural, equipos multi-agent, datos cross-market, Alpha Zoo, Shadow Account, Web UI, CLI, MCP y conectores de brokers viven dentro del mismo proyecto.

En uso real, conviene empezar por la ruta mínima: correr un backtest local read-only desde la CLI y revisar si las fuentes de datos y el reporte cumplen las expectativas. Después, probar Shadow Account o Alpha Zoo. Solo al final considerar MCP, despliegue Web y conectores de brokers. En sistemas de trading, los errores más caros no suelen venir de lo que una herramienta no puede hacer, sino de no definir con claridad permisos, datos, riesgo y auditoría.

记录并分享
Creado con Hugo
Tema Stack diseñado por Jimmy