Leader · What the system actually is
A research pipeline that argues with itself, then keeps the receipts
FutureMarket is a single-node Python service that pulls free market data, runs it through a mixture of arithmetic indicators and large-language-model analysts, writes every resulting opinion to a log, and — days later — goes back to mark its own homework. The self-grading half is the interesting part. The prediction half is mostly ordinary.
futuremarket
≈21,700 lines of Python
Backend: FastAPI · Frontend: React 19
Most systems that claim to predict markets are opaque about the join between the claim and the outcome. FutureMarket is unusual in that the join is a database table. Every prediction any component emits — technical, sentiment, LLM debate, factor model — is written to a single prediction_log row carrying a strategy_id, a stated confidence, and the price at the moment of the call. A scheduled job returns one, five, and twenty days later to fill in what actually happened.
Everything downstream is built on that table. An Elo tournament pairs strategies that made calls on the same symbol on the same day and rates them head-to-head. A calibration tracker asks whether a strategy that says “70% confident” is right about seventy per cent of the time, and derives a multiplier that shrinks or inflates future confidence accordingly. A signal compositor then weights the five live prediction sources by exactly those two numbers before it fuses them into a single score.
That is a genuine, closed feedback loop, and it is implemented rather than merely diagrammed. It is also, at time of writing, a loop with several severed strands. The circuit breaker computes the actions it wants taken and then only logs them. The walk-forward backtester never trains anything on its training window. Adaptive weights are recomputed nightly and thrown away on the next process restart, because nothing reloads them.
This report describes the system as it is in the source, not as its docstrings describe it. Where the two disagree — and they frequently do — the disagreement is reported. A section of Errata collects the cases where a module promises behaviour it does not implement.
The honest summary: FutureMarket is a well-structured harness for evaluating market predictions, wrapped around predictors that are individually unremarkable. The scaffolding is more sophisticated than the alpha. Whether that is a criticism depends on which half you were trying to build.
No performance figures appear anywhere in this report. The repository contains no recorded returns, no committed backtest output, and no evaluated model artefacts — only the code that would produce them. Publishing numbers would mean inventing them.