Tradefloor MCP
Permite que tus agentes ejecuten, bifurquen y puntúen estrategias de trading en mercados bursátiles simulados que reaccionan a tus órdenes.
Documentación
Resumen
tradefloor es un mercado de valores simulado, con un libro de órdenes limitado y una economía, para probar estrategias de trading y agentes de IA. Un mercado se calcula a partir de sus entradas, por lo que las mismas entradas producen el mismo mercado nuevamente, y las órdenes propias de un agente mueven los precios a los que opera.
Comienza con una tarea
Nuevo en tradefloor
Ejecuta tu primer mercado. Instala, ejecuta un mercado de cinco empresas durante 20 días, puntúa a un agente y lee el resultado, en cinco minutos.
Creando un agente
Escribe un agente. El método act(obs), las órdenes que puede devolver, el dimensionamiento a un peso objetivo y lo que el agente puede ver.
Evaluando estrategias
Compara estrategias. Contra comprar y mantener en un mercado, luego a través de muchas semillas, y por lo que cuestan las operaciones de cada una.
Probando contrafactuales
Bifurca un mercado. Copia un mercado en ejecución, cambia una entrada en una copia y mide qué hizo ese cambio.
Más flujos de trabajo
- Ejecuta un escenario: puntúa a un agente con y sin un escenario incluido en las mismas semillas.
- Prueba un agente LLM: PydanticAI, el SDK de OpenAI Agents, LangGraph o una función simple, con sus respuestas registradas.
- Graba y reproduce: ejecuta nuevamente un agente LLM grabado sin llamar al modelo.
- Reproduce o publica un experimento: qué fija un mercado, guardar una ejecución como manifiesto y qué informar (Citando tradefloor).
- Entrena una política RL: un entorno Gymnasium cuya recompensa incluye el costo del propio trading de la política.
- Conéctate a través de MCP: un servidor local que permite a un modelo construir mercados, puntuar especificaciones de estrategias y explicar movimientos de precios.
Conceptos
UniversePresetScenarioSeed
Motor el mercado: libro de órdenes, empresas, economía
observación →← órdenes
Agente act(obs)
Ejecución el motor avanzado a través de días de trading
Puntuación evaluate, rank
Punto de control, luego bifurcación dos futuros desde un pasado
Manifiesto, luego reproducción entradas, versión y órdenes, guardados
MotorUn mercado. tf.Engine(seed=..., universe=..., model=...) ejecuta el libro de órdenes, los valores justos de las empresas y la economía, y devuelve tablas Arrow de lo que sucedió. Motor
UniversoLas empresas que un mercado negocia, en orden. El orden es parte del mercado. tf.Universe.random(n, seed=...) crea empresas ficticias, y Universe.from_edgar lee empresas reales. Universo
PreajusteUn conjunto nombrado y congelado de coeficientes de modelo, como pt-v20, el predeterminado. Un preajuste incluido nunca cambia. ModelParams
SemillaEl entero que fija cada sorteo aleatorio que toma el motor. Universe.random toma una semilla propia, que elige las empresas. Semilla
EscenarioUn conjunto nombrado de cambios en la economía o el mercado en días determinados, como un shock de tasas, con los supuestos detrás de ellos declarados. Ejecuta un escenario
AgenteCualquier objeto con un método act(obs). Las estrategias, los agentes LLM y las políticas RL llegan al mercado de esta manera. Escribe un agente
Observación y acciónEn cada paso de decisión, el agente recibe una observación (precios, su cartera, el reloj) y devuelve una acción: órdenes, como acciones por ticker, o None. Qué devuelve act
EjecuciónUn motor avanzado a través de días de trading. Una ejecución con un agente también depende de las órdenes del agente, porque se completan contra el libro y mueven los precios.
Puntuación tf.evaluate ejecuta cada agente en su propia copia de un mercado y devuelve un Scorecard. tf.rank repite eso a través de muchas semillas y cuenta qué agente lo hizo mejor. Compara estrategias
BifurcaciónUna copia de un mercado en ejecución. Cambia una entrada en una copia y cualquier diferencia posterior proviene de ese cambio. Bifurca un mercado
ManifiestoUn RunManifest contiene la versión, preajuste, semilla, universo, escenario y registro de órdenes de una ejecución, y reconstruye el mercado a partir de ellos. Reproducibilidad
En código, la ejecución completa más pequeña es un universo, un agente y una puntuación:
import tradefloor as tf
universe = tf.Universe.random(5, seed=11) # the companies, in order
agent = tf.baselines.BuyAndHold() # act(obs) returns orders
# One engine per agent, on the default preset, seed 42, for 20 trading days
scores = tf.evaluate({"hold": agent}, seed=42, universe=universe, days=20)
print(scores["hold"])
Scorecard('hold', pnl=23,765, return=+2.38%, trades=5, impact=+0.43bps, sharpe=+1.63, vol=19.3%, in_market=100%, exposure=0.94x)
Referencia
La API recomendada es la lista corta de clases y funciones que la mayoría del código necesita. El índice completo enumera cada exportación con su nivel. El modelo está documentado en Cómo se hacen los precios, sus coeficientes en Parámetros del modelo, y lo que se ha verificado contra mercados reales en Cómo se mide. Política de soporte dice qué versiones reciben correcciones y qué puede cambiar una versión de parche.
La aplicación alojada en app.tradefloor.dev está documentada por separado en Alojado (vista previa).