Case Study
A systematic trading platform whose defining feature is that it refuses to fool itself.
Most amateur trading bots are overfit backtests that their authors do not realize are overfit. ÀYÒ is built the other way around. Generating strategies is easy; the hard part is not being fooled by them. So the whole system is organized around a validation layer that a good looking but wrong strategy cannot pass. A language model proposes, and a deterministic gate disposes.
Àyò is the Yoruba seed and pit game of counting and calculated capture, and it also means joy. A fitting name for something that wins by playing a patient, measured game.
ÀYÒ runs on two clocks that never touch. The slow clock is the brain: Claude researches and writes each strategy as structured data, never as runnable code. The fast clock is the body: a deterministic engine that evaluates the frozen strategy against live prices, so the same inputs always produce the same orders.
Slow clock · nondeterministic
The Brain (Claude)
Researches, proposes strategies as content hashed data artifacts, and interprets why a signal decayed. Runs on demand, and on a schedule.
Fast clock · fully deterministic
The Body (the executor)
Trades only the frozen artifact. Same inputs, same orders, every time. No model sits in the execution path.
Because the brain emits a content hashed artifact, you validate the artifact rather than the model, so a nondeterministic author yields perfectly reproducible behavior. The guarantee is blunt: remove Claude entirely and the body keeps trading safely on its frozen rules. It simply stops getting smarter.
A beautiful backtest is worthless. The engineering value sits in a gate that a plausible but wrong strategy cannot clear. Three layers do the work:
A momentum book once looked like it beat a passive benchmark on a single split. The robustness sweep took it apart, and the gate refused to deploy it:
robustness sweep · cross sectional momentum rolling windows beat benchmark in 2 / 5 periods parameter grid positive edge in 0 / 12 settings verdict FLUKE, no robust edge
An in sample Sharpe of 3.72 that becomes minus 6.99 out of sample is exactly the trap that empties accounts. The whole job of the system is to see it and say no.
Refusing to deploy a bad strategy is the easy half. The harder half is not being fooled by your own measurement, because that is where self deception is invisible and where everybody quietly cheats. In July the system was caught doing exactly that, in its own favour.
benchmark scoreboard · self audit
symptom the scoreboard was flattering itself
cause after hours benchmark prices up to 3% stale
(769 logged for a market that never traded above ~748)
effect overstated the book against the market, all live window
fix benchmark sampled in session only, median anchors,
recorded history sanitised
result a materially smaller, honest number. published as is.The bug flattered the system, which is the only kind that survives a casual review. It was found by auditing a number that looked too good rather than enjoying it, and the corrected figure replaced it the same day. A platform that will not audit its own instruments has no business auditing its strategies.
A headless Claude runs on the same machine as the trading daemon, so the brain is always reachable. On a schedule it proposes fresh strategies. Every proposal is parsed into typed rules, never executed as code, and forced through the same out of sample gate before anything can go live. Claude proposes, math decides, and real money always needs a human. Here is one cycle:
research cycle · brain proposes, gate decides
REJECTED Oversold Mean Reversion Snapback
in-sample Sharpe 3.72 -> out-of-sample -6.99
REJECTED Trend Momentum Breakout
out-of-sample Sharpe 1.39 but drawdown 65%
no proposal survived out of sample. nothing deployed.Building the gate raised questions the literature had not settled, so the work produced two preprints. Both are about the same problem this system exists to solve: how do you keep a search process honest when a language model is doing the searching?
Preprint · July 2026
Trials Adjusted Out of Sample Gating for LLM Proposed Trading Strategies
The gate written up as a method: an LLM proposes strategies as frozen, content hashed artifacts, and a deterministic verifier trades only what survives walk forward testing, a trials adjusted bar, and robustness sweeps. On real markets it turned an in sample Sharpe of 3.07 into a rejection and unmasked a small out of sample edge as a 0 of 12 fluke, deploying nothing.
Preprint · July 2026
How Many Strategies Did You Really Try? Effective Trial Counts for LLM Proposed Backtests
Every selection bias correction needs a trial count, and when a language model does the searching that number is unknown: proposals are many but correlated. Borrowing the effective number of tests estimator from statistical genetics gives a principled count, and measuring it on this pipeline showed the size of the correction is a property of the prompting protocol. Diverse angles need no correction; drawing repeatedly from one narrow angle collapses fourteen proposals to three effective trials and rejects genuine strategies.
Signals
Cross sectional momentum, mean reversion, low volatility and trend, plus value, quality and growth factors drawn from real fundamentals across a universe of 156 large caps in every sector.
Pre registered playbook
The one edge a language model can plausibly add is reading information the price does not contain. So each hypothesis is registered before the evidence arrives, with a fixed trigger, direction, size cap and an honest prior, then graded per hypothesis. Two are pre registered as likely to fail.
Ensemble
A framework to blend many low correlation signals into one book, with the correlation analysis to prove the diversification is genuine.
Market neutrality
Each holding's beta is measured from a year of daily returns and the book is hedged with a short benchmark position of matching size. Without it, results mostly measure which way the market went, not whether the stock selection was any good.
Risk
Volatility normalised sizing, a drawdown circuit breaker that de risks toward cash, per sector concentration caps, a daily loss kill switch, and a one command flatten. All deterministic, no model in the path.
Self calibration
The brain logs resolvable, time boxed predictions at a stated confidence and is scored on them, so its judgement is measured rather than assumed. Every deviation from the mechanical book is also graded against the baseline it deviated from.
Autonomy ladder
Four rungs from paper advisor to bounded auto. Real money is gated on numbers fixed in advance: thirty days live, Sharpe above one, drawdown within ten percent, at least twenty scored tilts that are positive and win more than fifty five percent, and credentials moved off the shared box.
Operations
A hardened systemd service on a private box, self healing, no inbound ports, with the brain co located so research and execution never depend on a laptop being awake.
ÀYÒ is not a proven money maker and it does not pretend to be. It trades paper only, and it has no validated alpha. Every simple price based strategy tested so far has failed honest validation, which is the expected and correct result on efficient large cap markets.
What ÀYÒ is: a complete research and execution platform whose validation layer reliably refuses to deploy mirages, applying current language model systems engineering to a domain that punishes self deception harder than almost any other.
The open question is now running as a live experiment rather than a plan. Signals drawn from information the price does not already contain cannot be backtested honestly, since no clean history of it exists, so each hypothesis is registered in advance and forward tested on paper with the book hedged to market neutral, so the record reflects the selection rather than the weather. That evidence accrues in weeks, and most of the hypotheses are expected to die. Publishing the ones that fail is the point.