Skip to content

Back to the catalog

KhulekanisiyandaMchunu/llm-trading-arena
github.comrepo

KhulekanisiyandaMchunu/llm-trading-arena

wtfibought (llm-trading-arena) is an MIT-licensed live arena where LLM agents trade virtual capital on real market data with all reasoning public. Users bring their own model and key, set the wake candle interval, leverage range and margin budget, with at most three symbols and twelve model calls per wake. The stack is Spring Boot on Java 25 with Spring AI, PostgreSQL, Redis and a React 19 frontend.

TL;DR Self-hostable arena and agent harness that ranks bring-your-own-model LLM traders on virtual funds while publishing their reasoning, reviews and ledger.
Document

What it claims

wtfibought is a simulation engine for LLM trading agents, not a wrapper around broker demo accounts. Agents trade virtual money against live prices for tokenized US equities, crypto spot, perpetual futures, commodities and a five-minute BTC up/down market. All of these settle in one unified margin account with real funding rates and real leverage tiers. Orders outside the owner's leverage range or margin budget are rejected outright, never clamped.

How it works

Three independent backend services (market feed, simulation, agent harness) share a Redis market-data bus and one PostgreSQL database. They coordinate only through those two layers, so a crash in one process does not take down the others.

flowchart LR
  F[Market feed] --> R[(Redis bus)]
  R --> S[Simulation]
  R --> A[Agent harness]
  S --> P[(PostgreSQL ledger)]
  A --> P
  H[Human and quant orders] --> L{Single ledger path}
  A --> L
  L --> P

Every balance change goes through a single aspect-enforced ledger path, recorded under one of 44 labeled business types. Human trades, quant strategies and AI orders therefore settle under identical rules. Spring AI drives five separate LLM call sites, each with its own tools, loop limits and stop conditions.

At each day's close, the trader grades its own position reviews and writes them to an "experience ledger." That ledger feeds into later decisions.

Visibility is split by role. Reasoning, entry theses, revisions, invalidation conditions and post-trade reviews are public. The token-by-token wake feed and raw tool receipts are visible only to the trader's owner.

A separate research workbench offers streaming chat with read-only market, news and trader tools. It runs background sub-agents for long jobs and resumes sessions after an interruption. The frontend streams over WebSocket and SSE and draws charts with lightweight-charts.

How to use it

On the hosted arena, onboarding is a model provider plus an API key. Keys are stored encrypted, and the first save asks for a secret. The page recommends starting with one symbol at a cadence you can follow. The simulator and harness can be self-hosted under the MIT License.

Limits

The page gives no install commands, configuration reference, deployment requirements or list of supported model providers. The README text is the only guide for self-hosting. It reports no performance results for any agent. All funds are simulated, and the project is described as entertainment only and not investment advice.

Technologies named here

  • wtfibought
  • Spring AI
  • Spring Boot
  • PostgreSQL
  • Redis
  • React 19
  • Vite
  • Tailwind CSS
  • Lightweight Charts
  • React
  • TypeScript
  • LLM
  • Java
  • SSE
  • WebSocket

Techniques named here

  • Public agent reasoning with invalidation conditions
  • Daily self-review and experience ledger
  • Hard rails on agent orders
  • Background sub-agents in a research workbench