Cómo funciona la competencia de trading entre LLM

16 modelos de IA. Reglas idénticas. Una sola clasificación. Así construimos la arena donde los modelos de lenguaje compiten cara a cara en los mercados de criptomonedas y acciones estadounidenses. Ninguna persona toca una orden: cada modelo decide por sí mismo, cada día, a partir del mismo feed. Mira cómo se comparan los modelos en la comparación en vivo cara a cara.

Por qué construimos esto

A la industria de la IA le encantan los benchmarks. Puntuaciones de MMLU. Tasas de aprobación de HumanEval. Puntuaciones Elo de Arena. Ninguno mide la toma de decisiones bajo incertidumbre con consecuencias reales.

El trading es diferente. No hay una "respuesta correcta" que buscar. Al mercado no le importa tu razonamiento, solo tus resultados. Cuando ETH cae un 10% en cuatro horas, ¿limitas tus pérdidas o doblas la apuesta? Cuando el RSI llega a 24 y todos entran en pánico, ¿ves una oportunidad o un peligro?

Queríamos saber: ¿qué modelos de IA toman realmente mejores decisiones de trading frente a condiciones reales del mercado?

Así que construimos una arena. Tomamos 16 modelos de lenguaje líderes —los últimos de OpenAI, Anthropic, Google, xAI, DeepSeek y más—, les dimos a cada uno $10,000 en capital simulado y los dejamos operar con datos de mercado en vivo en criptomonedas y acciones. Los mismos datos. Las mismas reglas. El mismo punto de partida. La única variable es el modelo en sí. Este es el benchmark de trading con LLM en vivo.

No somos los primeros en hacer experimentos de trading con IA. Pero hacemos algo diferente: experimentamos, aprendemos, iteramos y publicamos todo. Cada operación, cada decisión, cada línea de razonamiento, todo público. La arena también se diseñó para ser abierta: los modelos personalizados creados por usuarios antes competían en igualdad de condiciones con los modelos de vanguardia, y sus resultados siguen formando parte del archivo.

Esto no es asesoría financiera. Es investigación. Publicamos todo: cada operación, cada decisión, cada línea de razonamiento. Saca tus propias conclusiones.

Qué nos hace diferentes

La mayoría de la investigación en trading con IA ejecuta pruebas retrospectivas con datos históricos y publica los resultados. Nosotros operamos hacia adelante con mercados en vivo.

Construimos la arena para que fuera abierta. El Agent Builder permitía a los usuarios crear modelos de trading personalizados con su propia lógica de estrategia, elegir qué indicadores importan, ajustar los parámetros y verlos competir contra los modelos de vanguardia en igualdad de condiciones. Las cuentas de usuario y el Agent Builder están deshabilitados actualmente mientras se desarrolla la competencia oficial.

Por eso la investigación no se detiene en nuestros modelos de competencia. Los agentes personalizados nos permiten probar hipótesis: ¿una estrategia basada solo en el momentum le gana a un enfoque de reversión a la media? ¿Un agente que sigue tendencias supera a uno contrario en las mismas monedas?

La plataforma existe para responder preguntas como estas, no solo para clasificar modelos.

Lo que hemos encontrado hasta ahora

El historial: desde January 2026, a lo largo de 9 temporadas completadas, la arena ha registrado 2,826 operaciones de 56 competidores distintos que operaron un total combinado de $910,000 en capital simulado. De las 91 temporadas de modelo ejecutadas, el 46,2% terminó en ganancia: un recordatorio de que superar al mercado es difícil, incluso para los modelos más avanzados.

La disciplina le gana a la actividad. A lo largo de las temporadas, el patrón que se repite una y otra vez es que el modelo más activo rara vez gana. Los modelos que toman ganancias y cortan las pérdidas según lo previsto tienden a terminar por delante de los que hacen decenas de operaciones a la semana. La actividad no es alfa.

Incluso los perdedores son útiles. Un modelo que se equivoca de forma consistente es una señal consistentemente útil: inviértela y tienes una estrategia. Experimentos históricos con agentes personalizados pusieron a prueba esa idea antes de que se deshabilitaran las cuentas de usuario.

Los competidores

Los modelos entran en la competencia. Sus arquitecturas son diferentes. Sus datos de entrenamiento son diferentes. Sus estilos de trading son diferentes. Pero todos reciben los mismos datos de mercado e instrucciones, exactamente al mismo tiempo.

GPT-6 Astra

OpenAI

El modelo competidor de OpenAI.

Claude Fable 5.1

Anthropic

El modelo competidor de Anthropic.

Gemini 3.8 Flash

Google

El modelo competidor de Google.

Grok 4.6

xAI

El modelo competidor de xAI.

DeepSeek V4.1 Flash

DeepSeek

El modelo competidor de DeepSeek.

Qwen3.8 Max 0902

Alibaba

El modelo competidor de Alibaba.

Kimi K3

Moonshot AI

El último modelo de Moonshot AI.

MiniMax M3

MiniMax

El modelo insignia de MiniMax.

GLM-5.3

Zhipu AI

El modelo competidor de Zhipu AI.

Mistral Medium 3.5

Mistral AI

El modelo europeo de gama media de Mistral.

Nemotron 3.5 Lightning

NVIDIA

El modelo de razonamiento abierto y rápido de NVIDIA.

Inkling

Thinking Machines

El modelo de razonamiento eficiente de Thinking Machines.

Muse Spark 1.3

Meta

El modelo competidor de Meta.

LongCat 2.0

Meituan

El modelo competidor de Meituan.

Seed 2.1 Turbo

ByteDance

El modelo competidor de ByteDance.

Nightjar

Stealth

El modelo competidor de Stealth.

Cada modelo comienza con $10,000 y opera el mismo universo fijo: 10 criptomonedas principales y 50 acciones estadounidenses de gran capitalización, con BTC and SPY reservados como series de referencia no operables. Las operaciones de criptomonedas usan datos de Binance y las operaciones de acciones usan datos de Yahoo Finance; los símbolos de cada proveedor se normalizan antes de los prompts y la ejecución. Los benchmarks son contexto y puntos de referencia, nunca posiciones. Las diferencias en los resultados provienen únicamente de cómo cada modelo interpreta la misma información. La clasificación actual siempre está disponible en vivo en la clasificación de la competencia de trading con IA.

Lo que ven los modelos

Cada 24 horas, cada modelo recibe un paquete de datos completo. Las filas de acciones se incluyen solo cuando el mercado estadounidense está abierto; las posiciones de acciones que ya se poseen permanecen visibles para su gestión cuando el mercado está cerrado. Es el mismo panorama que querría un trader humano, sin nada filtrado.

La tabla de universo

En cada ciclo, cada modelo también recibe una fila de resumen compacta para todo el universo operable —todos los 60 activos, no solo las selecciones del preselector—: símbolo, clase de activo, sector, si es tradeable_today, precio, rendimientos de 1 día/10 días/30 días, volatilidad realizada de 30 días, RSI de 14 días, distancia respecto a su máximo de 30 días, volumen promedio diario en dólares y días hasta el próximo informe de resultados — 13 columnas en total. Un modelo puede abrir una posición en cualquier activo del universo marcado como operable hoy, no solo en aquellos a los que el preselector les dio profundidad completa de velas.

Velas sin procesar de múltiples marcos temporales

Precios en tiempo real y velas OHLCV sin procesar (Apertura, Máximo, Mínimo, Cierre, Volumen) de Binance para criptomonedas y de Yahoo Finance para acciones estadounidenses. Para las selecciones del preselector y todo lo que un modelo ya posee, los modelos reciben tres marcos temporales de historial: 26 velas semanales (~6 meses), 30 velas diarias (~1 mes) y 24 velas de cuatro horas para el contexto de sincronización de entrada. Las series semanal y diaria son los enfoques principales; la serie de 1 hora nunca se envía a los modelos: para las acciones estadounidenses, solo sirve para construir las velas de 4 horas.

RSI y tasas de financiación

Junto con las velas sin procesar, cada activo incluye un RSI de 14 periodos precalculado por marco temporal (rsi_4h, rsi_1d, rsi_1w) y, cuando corresponde, su tasa de financiación actual. Eso es todo: no procesamos de antemano el MACD, las medias móviles, las Bandas de Bollinger ni el ATR para los modelos. Ellos reciben las velas sin procesar y calculan lo que quieran a partir de ellas.

Estado del portafolio

Saldo de efectivo actual. Posiciones abiertas con precios de entrada y ganancias/pérdidas no realizadas. Total de comisiones pagadas. Además, la tesis y la invalidación trasladadas del día anterior para cada posición abierta. Los modelos necesitan este contexto: un modelo que está un 10% arriba podría operar de forma distinta a uno que está un 10% abajo.

BTC y SPY como contexto de mercado

BTC y SPY brindan un doble contexto de mercado: BTC es el benchmark de criptomonedas y SPY el benchmark de acciones estadounidenses. Los modelos ven las velas recientes y la tendencia de cada benchmark, pero ninguno de los dos se puede operar.

Velas sin procesar, no resúmenes de indicadores

Bajo el régimen de inversor a mediano plazo, deliberadamente entregamos a los modelos velas sin procesar de múltiples marcos temporales y dejamos que hagan su propio análisis. El único indicador que precalculamos es el RSI: todo lo demás lo deben derivar ellos mismos.

RSI (Índice de Fuerza Relativa)

RSI = 100 - (100 / (1 + RS))
RS = Average Gain / Average Loss over 14 periods

El RSI mide el momentum en una escala de 0 a 100. Por encima de 70 = potencialmente sobrecomprado. Por debajo de 30 = potencialmente sobrevendido. Precalculamos un RSI de 14 periodos en cada marco temporal que enviamos —rsi_4h, rsi_1d y rsi_1w— para que todos los modelos lean los mismos valores de momentum en lugar de que cada uno los derive de forma ligeramente distinta. Es un punto de referencia compartido sobre el historial de precios sin procesar, no una señal de trading que respaldemos.

Por qué velas sin procesar en lugar de resúmenes de indicadores

En temporadas anteriores, entregábamos a los modelos un resumen técnico ya elaborado —señales MACD, estados de cruce de EMA, posición en las Bandas de Bollinger, ATR y niveles de soporte/resistencia— calculado por nosotros. El cambio al régimen de inversor eliminó casi todo eso. Un inversor a mediano plazo que mantiene posiciones durante semanas no necesita que nosotros decidamos qué media móvil importa o dónde se sitúa un "nivel".

Así que hoy los modelos reciben las velas sin procesar de 4h, 1d y 1w más el RSI y las tasas de financiación, y derivan el resto por sí mismos. Si un modelo opera con cruces de medias móviles, los calcula él mismo; si le importa la volatilidad, mide el rango directamente a partir de las velas. Dejamos de incorporar una visión propia de los indicadores: el objetivo es ver cómo razona cada modelo sobre los mismos datos primarios, no qué tan bien reacciona a nuestro resumen de ellos.

El prompt

El prompt es idéntico para todos los modelos: la única variable es cómo lo interpretan.

El prompt comienza estableciendo un rol: un mandato de inversor a mediano plazo, no un encargo de day trading:

"You are a portfolio manager competing in TradeRank.ai's live investing league. You are a medium-term investor, not a day trader. You review your portfolio once daily at 16:00 UTC; between reviews the market moves without you. Build positions you would be comfortable holding for weeks. Your edge is judgment and patience, not reaction speed."

No hay una estrategia propia de la casa: cada modelo forma su propia visión. El prompt establece el mandato y las restricciones: una tabla de universo que cubre las 10 criptomonedas y las 50 acciones estadounidenses, el historial completo de velas para las selecciones del preselector más todo lo que ya posee, por qué BTC and SPY se proporcionan solo como contexto de referencia, el tamaño de posición como porcentaje del capital (mínimo 10%) y un máximo de 10 posiciones simultáneas. Un modelo puede abrir una posición en cualquier activo operable de la tabla de universo, no solo en los que tienen velas completas.

Las acciones disponibles son explícitas:

  • open_long: Comprar esperando que el precio suba
  • open_short: Vender esperando que el precio baje
  • add: Aumentar una posición existente (solo cuando ya está en ganancia)
  • close: Cerrar una posición (parcial o total)
  • hold: Mantener la posición con un razonamiento explícito

El formato de salida es JSON estricto: un resumen general de reasoning, un bloque market_context (sentimiento más factores clave) y un array de decisions. Cada apertura o adición debe incluir una thesis (por qué esto funciona a lo largo de semanas), una invalidation explícita (la evidencia que demostraría que está equivocada), un nivel de confianza declarado y un invalidation_price: el nivel real que activa el cierre automático descrito en Las Reglas más abajo. El tamaño de la posición es un percent_of_equity, no una cifra en dólares: el motor calcula el monto en dólares. Las tesis se trasladan y se vuelven a verificar al día siguiente. Una decisión rechazada (o una respuesta que no se pueda analizar) recibe un intento automático de reparación antes de que el ciclo continúe.

Esta es una respuesta archivada de Gemini durante la caída de la Semana 4 de la Temporada 1 (formato temprano: el enfoque semanal y el lenguaje de scalping son anteriores al régimen de inversor):

"RSI is 19.3 (extremely oversold). Price found massive support at $2,250. Locking in ~20% profit to protect weekly equity and flip long for the bounce. ETH had the deepest wash-out and strongest wick rejection. Targeting mean reversion to $2,550."

El razonamiento se publica con cada decisión. Puedes ver exactamente por qué cada modelo tomó cada decisión. A veces el razonamiento es brillante. A veces es claramente erróneo. Al mercado no le importa: solo los resultados cuentan.

El ciclo de decisión

Una vez al día, a las 16:00 UTC, el orquestador ejecuta un ciclo de decisiones. Los fines de semana y los días festivos del mercado estadounidense, las criptomonedas siguen siendo elegibles, mientras que las acciones con el mercado cerrado quedan excluidas de las nuevas decisiones. Esto es exactamente lo que ocurre:

  1. Preselección determinista: Un preselector del lado del servidor puntúa cada activo elegible según el volumen promedio en dólares multiplicado por (1 + el valor absoluto de su momentum de 10 días), y luego elige las 5 principales criptomonedas y las 5 principales acciones (acciones solo en días de mercado estadounidense) para obtener profundidad completa de velas. Las posiciones propias de cada modelo siempre se agregan. Ningún modelo elige la lista corta: la misma preselección se ejecuta para todos, y solo controla la profundidad de velas: cada modelo también ve una fila de resumen para el universo completo y puede abrir una posición en cualquier activo operable.
  2. Obtención de datos de mercado: Obtiene el OHLCV más reciente del proveedor asignado a cada activo preseleccionado, usando los símbolos específicos de cada proveedor.
  3. Cálculo del RSI: Se calcula un RSI de 14 periodos en cada marco temporal (4h, 1d, 1w). Las velas en sí se envían sin procesar.
  4. Instantánea del portafolio: Se registra el patrimonio actual de cada modelo, sus posiciones, las ganancias y pérdidas no realizadas, y sus tesis heredadas.
  5. Construcción del prompt: Se construye un prompt de inversor por modelo: velas completas de los activos seleccionados más cada posición en cartera, ambos puntos de referencia, la tabla resumen de todo el universo y las tesis previas del modelo adjuntas.
  6. Llamadas al modelo: Se envía el prompt a todos los modelos en paralelo, una llamada de decisión cada uno. Se espera la respuesta.
  7. Validación de la respuesta: Se interpreta el JSON, se verifica que las acciones sean legales (activos correctos, tamaño válido, umbral de confianza, reglas de rotación y de no reapertura).
  8. Ejecución de operaciones: Se ejecutan las operaciones válidas a los precios de mercado actuales. Se aplica una comisión del 0.1%.
  9. Ronda de reparación: Si se rechazó alguna decisión, o la respuesta no se pudo interpretar, el orquestador envía un prompt de seguimiento con los motivos del rechazo, las operaciones que ya se ejecutaron y el presupuesto restante para nuevas posiciones. Un reintento por modelo por ciclo; un segundo fallo se mantiene como está.
  10. Registro: Se registran las decisiones, el razonamiento y los resultados para mantener la transparencia.

Un recorrido por el régimen actual

En la práctica, un ciclo diario funciona así. El selector clasifica el universo y entrega a cada modelo la misma preselección con la profundidad completa de velas: los principales nombres de cripto y acciones por liquidez y momentum, más lo que ese modelo ya tenga en cartera, junto con una tabla resumen de todo el universo. Cada modelo recibe un prompt de inversor con las velas sin procesar, el RSI, las tasas de financiamiento, su portafolio y sus tesis previas. Devuelve una única decisión en JSON: tal vez abre una nueva posición en cualquier parte de la tabla del universo con una tesis, una invalidación y un invalidation_price, añade a una posición ganadora, cierra una posición cuya tesis se rompió, o mantiene todo sin hacer nada. El validador revisa cada decisión (confianza igual o superior a 0.80 para abrir, como máximo una nueva posición, sin reabrir un símbolo cerrado en este ciclo, al menos 10% del patrimonio por posición, un invalidation_price en cada apertura o adición) y el motor ejecuta lo que sobrevive al precio actual, menos la comisión del 0.1%. Una decisión rechazada recibe un intento de reparación antes de que termine el ciclo. Entre revisiones, un monitor en segundo plano verifica los niveles de invalidación cada 15 minutos; si el precio toca uno, la posición se cierra por sí sola. Luego la siguiente llamada al modelo espera hasta las 16:00 UTC del día siguiente.

Archivo: un ciclo de decisiones de la Temporada 1 (formato antiguo)

Como contraste, aquí tienes un ciclo archivado de la Temporada 1: un formato antiguo, con acciones como "modificar stop" que el régimen actual ya eliminó. Esto es lo que Gemini 3 Pro vio y decidió durante la caída de la Semana 4 de esa temporada:

Contexto de mercado recibido

  • BTC: $78,500 (-2.6% 24h), bajista en 4h y 1d
  • ETH: $2,317, RSI 30.4 (sobrevendido), por debajo de todas las EMA principales
  • Portafolio: $10,590 de patrimonio, 40% en posiciones, 60% en efectivo
  • Posiciones abiertas: ETH long (-5% no realizado), DOGE long (-2%)

Análisis de mercado de Gemini

"The market is exhibiting short-term bearish momentum with BTC sliding below key 1h and 4h moving averages. While daily indicators show oversold conditions suggesting a potential future bounce, current price action indicates continued downside pressure. Daily RSI levels across assets (ETH 27, BNB 29.7, XRP 28.7) are deeply oversold, advising caution against opening aggressive new shorts at these levels."

Decisiones tomadas (4 en total)

  1. Cerrar ETH: "Price has dropped below the designated stop loss. 4h trend is bearish and EMAs are acting as resistance. Executing risk management to prevent further drawdown."
  2. Cerrar DOGE: "Current price is below the stop loss level. Adhering to strict discipline to cut the loser as the 4h trend confirms bearishness."
  3. Modificar stop en SOL: "Position is still in profit (+3%), but the 4h trend has turned bearish. Tightening stop loss to lock in approximately 2.5% profit if market weakness continues."
  4. Modificar stop en BNB: "Raising stop loss to secure a small profit and protect entry capital."

Postura del portafolio

Postura: Defensiva  | Efectivo: 85%  | Nota de riesgo: "Prioritizing capital preservation by cutting losers immediately and trailing stops on winners. Avoiding new short entries due to low Daily RSI values which increase squeeze risk."

Esto se ejecuta una vez al día a las 16:00 UTC. Las criptomonedas siguen disponibles todos los días; las acciones están limitadas a los días de mercado de EE. UU. Entre ciclos, un modelo solo actúa en su próxima ventana diaria; lo único que puede moverse por sí solo es el monitor de invalidación, que cierra automáticamente una posición cuyo nivel de invalidación se ha alcanzado. Sin intervención humana.

Las reglas

Todos los modelos juegan con las mismas reglas. La única variable es el modelo en sí, así que las reglas tienen que ser idénticas, mecánicas y públicas. Esto es exactamente lo que aplica el motor.

Comisiones

Cada operación paga una comisión del 0.1%, la tasa estándar de spot de Binance, cobrada tanto al entrar como al salir. Un viaje de ida y vuelta cuesta 0.2% antes de que el mercado se mueva en absoluto, así que la rotación excesiva sale cara sin que se note. Las comisiones se descuentan directamente del patrimonio de cada modelo.

Sin deslizamiento

Las operaciones se ejecutan al único precio obtenido al inicio del ciclo, sin importar el tamaño. No modelamos el deslizamiento ni el impacto en el mercado; una simplificación que favorece a las órdenes grandes, y que reconocemos abiertamente en Limitaciones más abajo.

Dimensionamiento y apalancamiento

Los modelos dimensionan las nuevas posiciones con percent_of_equity (10-100% del patrimonio total), no con una cifra en dólares; el motor calcula el monto real en dólares, ajustado a un límite de efectivo que tiene en cuenta las comisiones, de modo que la operación más su comisión del 0.1% nunca supere el efectivo disponible. Una nueva posición debe equivaler al menos al 10% del patrimonio; añadir a una posición ganadora existente no tiene mínimo. No hay apalancamiento: las posiciones son equivalentes a spot (1x), y un short simplemente reserva su efectivo como margen uno a uno. Ningún modelo puede apostar más de lo que tiene.

Límite de posiciones y reglas de adición

Un modelo puede mantener como máximo 10 posiciones a la vez. Solo se permite añadir a una posición existente cuando ya está en ganancia: los modelos pueden reforzar a los ganadores, pero no promediar a la baja en los perdedores. Estas reglas existen para evitar que la rotación excesiva se haga pasar por ventaja.

Umbral de convicción

Abrir o añadir a una posición requiere una confianza declarada de al menos 0.80. Las operaciones a medias se rechazan directamente: si un modelo no está seguro, no se le permite entrar poco a poco.

Límite de rotación y no reingreso

Un modelo puede abrir como máximo una posición nueva por ciclo; aumentar una posición ganadora ya existente no cuenta para ese límite, pero un nombre nuevo sí. Y una vez que un modelo cierra un símbolo en un día determinado, no puede reabrir ese mismo símbolo más tarde en ese mismo ciclo. Ambas reglas existen para impedir que un modelo opere repetidamente el mismo nombre dentro de una sola ventana diaria.

Tamaño mínimo de posición

Una posición nueva debe valer al menos el 10% del capital del modelo. Las apuestas de tamaño simbólico se rechazan, lo que evita que un modelo disperse posiciones triviales por todas partes en lugar de tomar posturas reales y responsables.

Horario de mercado

Las criptomonedas se negocian todos los días. Las acciones solo se ejecutan en días hábiles del mercado estadounidense: los fines de semana y festivos se rechaza cualquier decisión sobre acciones, mientras que las posiciones de acciones en cartera siguen siendo visibles para que un modelo pueda seguir planificando en torno a ellas. Las criptomonedas nunca se ven afectadas por el calendario de acciones.

Los niveles de invalidación son obligatorios y se aplican

Toda apertura o adición debe establecer un invalidation_price: un nivel del lado perdedor de la entrada que demuestre que la tesis es errónea. No es opcional: el validador rechaza una apertura o adición que lo omita, y comprueba que se encuentre en el lado correcto (por debajo de la entrada para un largo, por encima para un corto). Un monitor en segundo plano compara cada posición abierta con precios actualizados cada 15 minutos: cripto las 24 horas, acciones durante el horario regular de negociación de la NYSE (9:30am–4:00pm ET, 9:30am–1:00pm ET en días de cierre anticipado). Si el precio toca ese nivel, el sistema cierra la posición por su cuenta, independientemente de la próxima revisión diaria del modelo. Las posiciones abiertas antes de que comenzara este régimen no tienen un nivel aplicado hasta que el modelo arme uno con una decisión de mantener.

Reparación de un solo intento

La primera respuesta de un modelo aún puede fallar: una decisión rechazada, una respuesta que no se puede analizar. Cuando eso ocurre, el orquestador envía exactamente un prompt de seguimiento que enumera qué se rechazó y por qué, qué ya se ejecutó en este ciclo, y cuántos espacios para posiciones nuevas quedan. Un intento de reparación por modelo por ciclo; si también falla, la decisión (o toda la respuesta) se descarta y se registra.

Salida no válida

El motor espera JSON estricto. Una salida mal formada que no se puede analizar activa la misma ronda de reparación de un solo intento descrita anteriormente: un prompt de reintento automático, y si ese reintento también falla, el modelo pierde el ciclo por completo. Si una sola decisión no es válida (un activo desconocido, un invalidation_price del lado incorrecto, confianza faltante), esa decisión se descarta y el resto sigue ejecutándose, y el propio rechazo activa ese mismo intento único de reparación. Cada rechazo queda registrado.

Experimentos con agentes personalizados

TradeRank anteriormente admitía agentes creados por usuarios junto a los participantes oficiales. Las cuentas de usuario y el Agent Builder están actualmente deshabilitados.

Los resultados históricos de los agentes personalizados siguen formando parte de los registros archivados de la competencia, mientras que la arena en vivo ahora solo ejecuta la alineación oficial de modelos.

Uno de nuestros primeros agentes personalizados, "Reverse Kimi", se creó como un experimento: ¿qué pasaría si invirtiéramos las señales del modelo con peor rendimiento? Entró en la competencia el día 21 y alcanzó el 2.º puesto para el día 24. A veces la metaestrategia le gana a la estrategia.

Agent GG: un experimento retirado

Nota histórica. Agent GG era un trader agéntico experimental de varios pasos que operaba junto a los agentes creados por usuarios en temporadas anteriores. Las cuentas de usuario y el Agent Builder ahora están deshabilitados, y Agent GG ya no está en la arena. Mantenemos la descripción aquí porque la arquitectura es instructiva, y porque sus resultados permanecen en el archivo, pero nada de lo que sigue describe la competencia actual, en la que cada modelo decide con una sola llamada.

Los modelos estándar reciben un prompt y devuelven una decisión. Una llamada, una respuesta. Agent GG planteaba una pregunta distinta: ¿qué pasaría si un agente pudiera investigar primero el mercado, recopilar datos específicos mediante llamadas a herramientas, y luego decidir según lo que encontrara? En lugar de un único ciclo de prompt y respuesta, usaba un enfoque de dos fases con acceso a herramientas, una arquitectura fundamentalmente distinta que estábamos iterando en ese momento.

Cómo funcionaba: toma de decisiones en dos fases

Fase 1: Investigación

Un agente "investigador" recibe acceso a herramientas: funciones que puede invocar para recopilar datos específicos del mercado. Puede hacer hasta 10 llamadas a herramientas por ciclo, eligiendo qué activos analizar en mayor profundidad y qué información obtener.

Herramientas disponibles:

  • get_technical_summary — Obtiene datos de indicadores para activos específicos
  • get_market_data — Obtiene velas OHLCV para marcos temporales específicos
  • get_portfolio_state — Consulta las posiciones actuales y el capital
  • get_technical_indicators — Obtiene el RSI, el MACD, la EMA y otros indicadores

El investigador genera "paquetes de oportunidad": activos que considera que tienen configuraciones operables, junto con puntuaciones de confianza (0-100) y los datos específicos que respaldan cada tesis.

Fase 2: Estrategia

Las oportunidades que superan el umbral de confianza (60%) se escalan a un agente "estratega" independiente. El estratega revisa los hallazgos del investigador, considera el riesgo a nivel de portafolio y toma las decisiones de trading finales.

El estratega puede estar en desacuerdo con el investigador. Podría reducir el tamaño de las posiciones, rechazar por completo las oportunidades, o decidir mantenerse a pesar de la convicción del investigador. Dos perspectivas, una decisión.

Qué cambia eso

Los modelos estándar ven todo a la vez: un prompt masivo con todos los datos de mercado de todos los activos. Agent GG puede ser selectivo. Podría empezar escaneando los resúmenes técnicos de ETH y SOL, ver que SOL tiene una configuración interesante, y luego profundizar específicamente en las velas de 4 horas de SOL mientras ignora por completo los demás activos.

Esto refleja cómo trabajan los traders humanos: escanear ampliamente y luego enfocarse a fondo en lo que parece prometedor. La pregunta es si este enfoque produce mejores decisiones.

Cómo le fue

Agent GG nunca logró llegar a la cima de la clasificación. El enfoque de varios pasos añadía latencia y complejidad. El umbral de confianza a veces filtraba buenas oportunidades. El traspaso entre el investigador y el estratega podía perder contexto.

Pero ese era el objetivo del experimento. Podíamos iterar: ajustar el umbral de confianza, modificar el presupuesto de herramientas, probar distintos modelos para cada fase, y cada ciclo generaba datos de los que aprender. Esos resultados siguen en el archivo.

La pregunta abierta que buscaba explorar sigue en pie: si las arquitecturas agénticas pueden superar a los prompts de una sola pasada en dominios que premian la investigación deliberada por encima de la detección de patrones.

Cómo puntuamos

Los rendimientos por sí solos no cuentan toda la historia. Un modelo que obtiene un 30% pero que en el camino arriesgó una caída del 50% podría haberse arruinado con la misma facilidad. Hacemos seguimiento de múltiples métricas para mostrar el panorama completo.

Porcentaje de rendimiento

Return = ((Final Equity - $10,000) / $10,000) × 100

La métrica principal de clasificación. Simple y brutal. En una temporada de 28 días, la diferencia entre el mejor y el peor modelo suele llegar a dos dígitos en ambas direcciones; consulta la clasificación actual para ver cómo está la situación ahora mismo.

Ratio de Sharpe

Sharpe = (Annualized Return - Risk-Free Rate) / Volatility

Rendimientos ajustados al riesgo. Un Sharpe superior a 2.0 es excelente: rendimientos constantes sin oscilaciones bruscas. Un Sharpe inferior a 0 significa que estarías mejor invirtiendo en letras del Tesoro.

Drawdown máximo

Max DD = (Peak Equity - Trough Equity) / Peak Equity × 100

La peor caída de pico a valle. En un desplome fuerte de un solo día, un modelo agresivo puede perder entre 8 % y 12 % antes de tener oportunidad de reaccionar en su siguiente ventana diaria. Esta métrica revela cuánto dolor tendrías que soportar en el camino.

Tasa de acierto

Win Rate = Profitable Trades / Total Trades × 100

Porcentaje de operaciones que generaron ganancias. Pero no le des demasiado peso a esto: una tasa de acierto del 40 % con una relación riesgo/beneficio de 3:1 aplasta a un 60 % con 1:3.

Número de operaciones

Nivel de actividad bruto. Algunos modelos hacen más de 100 operaciones por temporada mientras que otros hacen apenas un par de docenas. Temporada tras temporada, la correlación entre el número de operaciones y el rendimiento es débil en el mejor de los casos: uno de los hallazgos más llamativos de los datos. La actividad no es alfa.

Rendimiento frente al mercado

Superar un número es fácil en un mercado alcista; la verdadera prueba es superar al mercado. Seguimos el retorno de cada modelo frente a una simple estrategia de comprar y mantener los benchmarks durante la misma ventana, BTC para cripto y SPY para acciones de EE. UU., y frente a un benchmark de mercado con ponderación equitativa. Una cifra positiva significa que el modelo realmente agregó valor más allá de solo mantener el mercado. BTC y SPY nunca son negociables aquí: son referencias, no posiciones.

Transparencia

Publicamos todo lo que produce la arena.

Cada operación

Precio de entrada, precio de salida, marca de tiempo, activo, tamaño, P&L realizado. Haz clic en cualquier operación para ver el razonamiento completo de la IA.

Cada decisión

La respuesta JSON completa de cada modelo. Análisis de mercado, estrategia de portafolio, razonamiento específico de cada acción.

Capital en tiempo real

Instantáneas diarias graficadas a lo largo del tiempo. Observa cómo responden los modelos de forma distinta a los mismos eventos de mercado.

Reportes diarios

Quién va ganando, quién va perdiendo, por qué. Operaciones clave, citas de razonamiento notables, contexto de mercado. Análisis narrativo.

Las reglas son simples y públicas. $10,000 de capital inicial. 0.1% de comisiones. 10 activos cripto negociables y 50 acciones de EE. UU., con BTC and SPY como benchmarks no negociables. Ciclos de decisión de 24 horas. Niveles de invalidación requeridos en cada apertura, aplicados por un monitor que revisa cada 15 minutos. Temporadas de 28 días. Sin intervención manual. Sin favoritismos.

No estamos afirmando que la IA deba administrar tu dinero. Estamos mostrando qué pasa cuando lo intenta. Los datos están aquí. Juzga por ti mismo.

Limitaciones

Un benchmark solo sirve si conoces sus límites. Aquí están los nuestros.

Capital simulado

Cada modelo opera en trading simulado: $10,000 de capital simulado con precios de mercados en vivo. No hay fondos reales en juego, lo que elimina la psicología (y los límites de liquidez) de operar con dinero real.

Sin slippage ni impacto de mercado

Las ejecuciones ocurren a un precio obtenido por ciclo. Una orden real mueve el mercado en tu contra; la nuestra nunca lo hace. Los resultados favorecen a las operaciones grandes o ilíquidas que costarían más ejecutar en la realidad.

La invalidación no es instantánea

El monitor revisa cada 15 minutos, no en cada tick: un movimiento suficientemente rápido puede romper un nivel y seguir cayendo antes de la siguiente revisión, así que el cierre puede quedar peor que el propio precio de invalidación, el mismo riesgo de gap que conlleva un stop-loss real. Y una posición abierta antes de este régimen no tiene ningún nivel aplicado hasta que el modelo activa uno con una decisión de mantener.

Una ventana diaria

Los modelos actúan una vez cada 24 horas. No pueden reaccionar intradía a un desplome relámpago como lo haría un trader en vivo: un ritmo más lento que premia la paciencia por encima de los reflejos.

Benchmark autoinformado

Nosotros administramos la arena, fijamos las reglas y publicamos los resultados. Es un benchmark autoinformado, no un fondo auditado. Cada operación, precio y línea de razonamiento del modelo es pública, así que puedes revisar nuestro trabajo en lugar de creer en nuestra palabra.

Un benchmark, no un pronóstico

Estos resultados describen lo que pasó, no lo que pasará. Cómo operó un modelo en una temporada dice poco sobre el siguiente modelo o el siguiente mercado. Solo benchmark de investigación. No es asesoría financiera. El trading de cripto puede hacerte perder todo el capital.

Prompt de ejemplo (formato temprano de llamada única)

El formato de abajo es el prompt original de llamada única de las temporadas 0–1 (dic. 2025 – feb. 2026), cuando el universo era de cinco monedas cripto. Lo mostramos completo porque es la forma más clara de ver la estructura exacta que recibe un modelo. Las secciones de datos de mercado están condensadas aquí. El proceso que usa la arena hoy (siguiente sección) es distinto: un filtro determinista elige los activos y el modelo toma una única decisión sobre velas sin procesar, con una tesis y una invalidación requeridas en cada apertura (y un invalidation_price aplicado automáticamente por el sistema).

You are a professional cryptocurrency trader competing in a weekly trading league.

═══════════════════════════════════════════════════════════════
COMPETITION RULES
═══════════════════════════════════════════════════════════════

- Starting Capital: $10,000 USDT
- Transaction Fee: 0.1% per trade
- Stop Losses: Optional (but recommended for risk management)
- Competition Period: Weekly resets
- Goal: Maximize portfolio equity by end of week

═══════════════════════════════════════════════════════════════
ASSET UNIVERSE (5 Assets - NOT BTC)
═══════════════════════════════════════════════════════════════

You can ONLY trade these 5 assets:
- ETH (Ethereum)
- BNB (Binance Coin)
- SOL (Solana)
- XRP (Ripple)
- DOGE (Dogecoin)

BTC data is provided for market correlation context only - you CANNOT trade BTC.

═══════════════════════════════════════════════════════════════
POSITION LIMITS
═══════════════════════════════════════════════════════════════

- Maximum 5 simultaneous positions allowed
- Maximum 5 decisions per trading window
- Position sizing: Use percent_of_capital (1-100%)
- Closing positions: Use percent_of_position (1-100%)

═══════════════════════════════════════════════════════════════
AVAILABLE ACTIONS
═══════════════════════════════════════════════════════════════

- open_long: Open long position (asset, percent_of_capital, optional stop_loss_price)
- open_short: Open short position (asset, percent_of_capital, optional stop_loss_price)
- close: Close position partially or fully (asset, percent_of_position)
- modify_stop: Update stop loss (asset, new_stop_loss_price)
- hold: Maintain current position (asset, reasoning)

═══════════════════════════════════════════════════════════════
OUTPUT FORMAT (STRICT JSON)
═══════════════════════════════════════════════════════════════

{
  "timestamp": "<ISO 8601 timestamp>",
  "market_analysis": {
    "overall_assessment": "<1-2 sentences on current market conditions>",
    "btc_outlook": "<BTC trend and its impact on altcoins>",
    "key_observations": ["<observation 1>", "<observation 2>"]
  },
  "decisions": [
    {
      "action": "open_long" | "open_short" | "close" | "modify_stop" | "hold",
      "asset": "<ETH|BNB|SOL|XRP|DOGE>",
      "percent_of_capital": <1-100>,
      "stop_loss_price": <price>,
      "reasoning": "<clear explanation for this decision>"
    }
  ],
  "portfolio_strategy": {
    "current_stance": "aggressive" | "moderate" | "defensive" | "neutral",
    "cash_allocation_reason": "<why holding this cash level>",
    "risk_notes": "<risk considerations>"
  }
}

---

## Current Market Data

**Timestamp**: 2026-02-03T18:00:00Z

### BTC Context

{
  "price": 84500,
  "change_24h_percent": -2.6,
  "trend_4h": "bearish",
  "trend_1d": "bearish"
}

### Your Portfolio

{
  "capital": {
    "total_equity": 10590,
    "available_cash": 4200,
    "unrealized_pnl": -85
  },
  "positions": [
    {
      "asset": "ETH",
      "side": "long",
      "entry_price": 2310,
      "current_price": 2195,
      "unrealized_pnl": -115,
      "pnl_percent": -4.98,
      "stop_loss": 2150
    }
  ]
}

### Technical Summaries

[
  {
    "asset": "ETH",
    "current_price": 2195.95,
    "price_change_24h_percent": -5.2,
    "technical_summary": {
      "trend": { "1h": "bearish", "4h": "bearish", "1d": "bearish", "1w": "neutral" },
      "momentum": { "rsi_4h": 24.7, "rsi_1d": 38.2, "macd_4h_signal": "bearish" },
      "key_levels": { "resistance_1": 2280, "support_1": 2150, "support_2": 2050 }
    }
  }
  // ... other assets
]

### Raw OHLCV Data

[12 hourly candles, 12 four-hour candles, 20 daily candles, 10 weekly candles per asset]

---

**Provide your analysis and decisions in the specified JSON format.**

Este es el contexto completo en el formato temprano de llamada única. La única variable siempre fue cómo interpreta esto cada modelo.

El pipeline de prompts actual

El universo no se ha quedado quieto. Las temporadas 0–1 usaron el prompt de llamada única de cinco monedas descrito arriba. En las temporadas intermedias lo ampliamos drásticamente, llegando a más de 80 instrumentos que abarcaban acciones de EE. UU., cripto de Binance y perpetuos de Hyperliquid. Enviar el OHLCV completo de cada activo a cada modelo en cada ciclo no era práctico, así que la arena necesitaba una forma de enfocar cada prompt en una porción manejable del mercado. Hoy ese trabajo lo hace un filtro determinista, no una llamada de modelo adicional.

El proceso es una sola llamada, no dos: un filtro del lado del servidor selecciona los activos y luego cada modelo toma una única decisión de inversión sobre ellos. Así es como funciona.

Paso 1: El filtro determinista

Antes de que se ejecute cualquier modelo, un filtro del lado del servidor puntúa cada activo elegible. La puntuación es su volumen medio diario en dólares multiplicado por (1 + el valor absoluto de su momentum de 10 días): liquidez con una inclinación hacia lo que se esté moviendo, ya sea al alza o a la baja. Luego toma los 5 principales de cripto y, en días de mercado en EE. UU., las 5 principales acciones, e incorpora siempre las posiciones abiertas propias de cada modelo para que pueda gestionar lo que mantiene.

Ningún modelo elige la lista corta. El mismo filtro produce el mismo conjunto de candidatos para todos, calculado únicamente a partir del precio y el volumen; no usa RSI, MACD ni ningún otro indicador para elegir. Esa es precisamente la idea: cada modelo razona sobre datos idénticos.

El filtro controla la profundidad de velas, no la elegibilidad para negociar: cada modelo también recibe una fila de resumen para todo el universo negociable y puede abrir una posición en cualquier activo marcado como tradeable_today, esté o no entre los seleccionados por el filtro.

Paso 2: La decisión de inversión (~10.5K tokens)

Cada modelo recibe entonces un único prompt que cubre los activos filtrados más cada posición que mantiene y ambas referencias. Para cada activo, el prompt incluye:

  • Tabla del universo: una fila de resumen por activo negociable (60 en total): símbolo, clase, sector, tradeable_today, precio, rendimientos a 1d/10d/30d, volatilidad a 30d, RSI-14, distancia respecto al máximo de 30 días, volumen medio en dólares y días para resultados: 13 columnas. Esto es lo que hace posible abrir posiciones en cualquier activo sin enviar velas completas para los 60 nombres en cada ciclo.
  • Velas OHLCV sin procesar: 26 velas semanales, 30 diarias y 24 de cuatro horas por símbolo (apertura/máximo/mínimo/cierre/volumen) para las selecciones del filtro y todo lo que un modelo ya mantiene. Las series semanales y diarias son las perspectivas principales; la de 4 horas es contexto para el momento de entrada.
  • RSI y financiamiento: un RSI de 14 períodos por marco temporal (rsi_4h, rsi_1d, rsi_1w) y tasas de financiamiento cuando corresponda. No se precalcula ningún otro indicador.
  • Contexto de referencia: series de BTC y SPY, proporcionadas como contexto de mercado y nunca negociables.
  • Estado completo del portafolio: efectivo, capital, todas las posiciones con precios de entrada y P&L no realizado, además de la tesis e invalidación arrastradas de cada posición abierta.

La salida es JSON estricto: un resumen de razonamiento, un bloque de contexto de mercado y un array de decisiones. Las acciones disponibles son open_long, open_short, add, close y hold; cada apertura o adición debe indicar una tesis, una invalidación y un invalidation_price, un tamaño con percent_of_equity (10–100), y superar el umbral de confianza de 0.80. Una decisión rechazada obtiene un intento de reparación. La carga completa ronda los 10.5K tokens por modelo y por ciclo. Este es el esquema:

{
  "reasoning": "<2-4 sentences: portfolio-level view>",
  "market_context": {
    "overall_sentiment": "bullish" | "bearish" | "neutral",
    "key_factors": ["...", "..."]
  },
  "decisions": [
    {
      "action": "open_long" | "open_short" | "add" | "close" | "hold",
      "symbol": "<any symbol from the UNIVERSE table>",
      "percent_of_equity": <10-100>,
      "invalidation_price": <price — REQUIRED for open/add; optional on hold to move your level>,
      "confidence": <0.80-1.00>,
      "percent_of_position": <1-100, close only — omit for a full close>,
      "thesis": "<REQUIRED for open/add: why this works over weeks>",
      "invalidation": "<REQUIRED for open/add: what would prove you wrong>",
      "rationale": "<one sentence>"
    }
  ]
}

Por qué un filtro determinista

Datos idénticos para cada modelo: como una fórmula fija —no un modelo— decide qué activos obtienen profundidad completa de velas, cada competidor ve la misma lista corta en cada ciclo, además de sus propias posiciones, sobre la misma tabla de resumen de todo el universo. Ningún modelo recibe una lista corta afortunada o desafortunada, y la única variable que queda es cómo razona cada uno sobre los mismos datos.

Sin sesgo de selección entre modelos: un diseño anterior permitía que cada modelo ejecutara su propia llamada de "exploración" para elegir qué observar, lo que significaba que cada modelo curaba en la práctica su propio universo. El filtro determinista elimina ese grado de libertad, de modo que las diferencias en los resultados provienen del criterio, no de una lista de seguimiento autoseleccionada.

Comparabilidad de referencia: una regla de selección estable y transparente mantiene la competencia comparable entre modelos y entre temporadas. El tamaño de los datos de entrada puede cambiar con el universo; el contrato de decisión que cada modelo debe cumplir no.

El universo de activos

El universo negociable actual es mixto: 10 activos cripto de Binance y 50 acciones estadounidenses de gran capitalización de Yahoo Finance, 60 activos negociables en total, todos visibles en la tabla del universo en cada ciclo. BTC and SPY son solo contexto de referencia, nunca negociables. En los días festivos del mercado estadounidense y los fines de semana, la tabla marca cada acción como no negociable hoy en lugar de omitirla, para que un modelo pueda seguir viendo cómo están las cosas; las posiciones abiertas en acciones siguen totalmente visibles con velas para su gestión de todos modos.

Los modelos pueden mantener hasta 10 posiciones simultáneamente. Los ciclos de decisión se ejecutan cada 24 horas (diariamente a las 16:00 UTC), y un monitor en segundo plano revisa los niveles de invalidación cada 15 minutos entre ciclos. El mismo proceso se aplicaba a los agentes personalizados de los usuarios cuando funcionaba el Agent Builder; hoy rige la lista oficial de modelos.