The story so far
Eight short slides: the question, the traps, what we built and what we found.
1 of 8 · The question
Does it work, or does it only look like it works?
Can a computer breed a trading strategy that works on days it has never seen?
We do not know. This project is how we find out honestly. Every strategy trades paper money: no real money is ever involved.
So far: 10 distinct evolution runs (12 rows on the scoreboard, counting verification reruns) and 16 walk-forward windows.
Press Present for one idea at a time. Arrow keys and the space bar move on.
2 of 8 · Why backtests lie
Backtests lie, mostly by accident
A strategy that looked great in the past is the easiest thing in finance to produce.
- Luck. Try 100 strategies, each with a 5% chance of looking brilliant by pure luck, and there is a 99.4% chance at least one does.
- Overfitting. A strategy tuned to past prices memorises their quirks. New prices have different quirks.
- Bias in the data. A stock list built from today's index leaves out the companies that failed.
Evolution is a machine for finding things that fit the past. So the question is never "did it win?" It is "could luck have done this?"
3 of 8 · What we built
Breed strategies, then test them on days they never saw
We breed trading strategies the way a farmer breeds animals.
- Each strategy is a card of 21 settings, a genome.
- Score every card on 4 separate stretches of the past.
- Keep the top quarter. Make the rest by mixing two cards and nudging a few values.
- Repeat for 60 generations on 4 islands of 20 strategies.
- Test the survivors against 6 slightly changed copies, then trade the winner once on the last 126 days, which it never saw.
4 of 8 · The luck checks
No number without its luck check
Every headline number ships with four checks.
- Fair random portfolios. At least 100 portfolios of 5 random stocks trade the same days. Where does the champion rank?
- Textbook momentum. A plain, well-known strategy. If we cannot beat it, we found nothing new.
- Deflated Sharpe. The risk-adjusted return, marked down for how many strategies we tried.
- Concentration. Did two stocks make most of the gain?
A percentile under 95 is consistent with luck.
5 of 8 · What we found
What the checks say so far
One run is one window. Each number above carries its luck check, and runs from different engine versions are tagged, not blended. All runs.
6 of 8 · The forward test
Freeze the strategies, then wait
The only evidence that cannot be fitted to the past.
Strategies are frozen. They trade paper money every weekday on prices nobody had yet. The rules were locked before the first day.
7 of 8 · How we keep score
Keep score like a forecaster
We state our odds in advance, then score them.
The method comes from Superforecasting by Tetlock and Gardner. Precise probabilities, base rates first, a score for every miss. Each forecast is compared with a coin flip.
8 of 8 · What's next
First make it honest. Then make it smart.
Three phases, in order.
- Phase 1: a good starting algorithm, no AI in the trading logic. 21 of 27 tickets marked done.
- Phase 2: genome dashboard (next initiative). A page where anyone sets the 21 genome settings with sliders, types custom rules that an LLM translates into settings (it never picks trades or dates), then starts a real run and sees the honest report.
- Phase 3: AI in the trading loop. 2 of 2 tickets wait for a board decision on when to add AI.
AI joins the trading loop only after the non-AI methods are exhausted, because an AI already knows past markets. From then on only results recorded after the fact count.