AI & ML / Full Stack
AETHER
Evolutionary ML research platform
Evolutionary trading agents, evaluated without shortcuts.
- Role
- Platform design, ML evaluation and full-stack engineering.
- Status
- Research platform with a read-only public showcase
- Year
- 2026

01
The problem
It is easy to build a trading backtest that looks brilliant: look-ahead bias, tuning against the test set, optimistic costs. The interesting question is whether a population of agents, trained and evolved on historical data, can find anything that survives honest out-of-sample evaluation.
AETHER is built so the answer, whichever way it goes, can be trusted.
02
My contribution
I designed the platform and its evaluation protocol and built it end to end: the research engine, the FastAPI service with background jobs, and the Next.js dashboard.
A lot of the work is in the parts that stop it lying to me: point-in-time features, leakage tests for every agent family, a final test locked by type, and calibrated uncertainty on every metric.
- Python
- PyTorch
- XGBoost
- FastAPI
- Next.js
03
How it works
Ingest
Datasets are validated, cleaned, content-hashed and stored immutably. Every experiment records exactly which bytes it used.
Featurise
25 point-in-time features. A feature on day t only uses bars up to the close of day t.
Evaluate
Agents are scored on purged, expanding walk-forward folds with an embargo, the same costs and the same risk rules.
Evolve
Elitism, tournament selection, bounded mutation and same-family crossover, with full lineage and cached re-evaluation.
Final test
The most recent 20% of the series stays locked away until one explicit, one-time run on pre-registered champions.
04
Engineering details
Leakage guards
Poisoned-future tests recompute features and check that all six agent families make bit-identical decisions up to day t, and that the simulated portfolio is unchanged.
Final test locked by type
Tournaments and evolution only accept a development-data type that cannot contain test bars. Running the final test twice needs an explicit acknowledgement and permanently flags the experiment.
Uncertainty that is calibrated
Daily returns cluster in volatility, so plain bootstrap intervals are too narrow. A stationary block bootstrap was implemented and its coverage tested on simulated data.
Bit-identical reproducibility
Seeded generators, single-threaded XGBoost and Random Forest, and deterministic PyTorch mean an identical configuration reproduces identical results, in parallel or serial.
Typed genomes, never code
Agents are built from typed, bounded genomes. The API accepts configuration, never Python or shell, and model artifacts load only after their SHA-256 matches the database record.
05
Results & limitations
On five liquid US instruments over 21 years, evolution reliably improves the score it is selected on, but it does not find strategies that generalise better than its own first generation or an equal-budget random search, and none beat passive exposure on the final test. The platform exists to report exactly that, and it does.
0 of 15
evolved champions beat buy-and-hold
On the locked 2022 to 2026 final test, run once after all selection was complete.
13 of 15
runs raised their selection score
Yet the champion was no better than generation 0 on unseen data (6 wins, 7 losses) and lost to equal-budget random search (4 wins, 9 losses).
797 / 797
values reproduced bit for bit
A full real-data research run re-executed from scratch matched on every value.
Limitations and honest caveats
- Historical simulation only. AETHER never places orders, connects to a broker or claims any strategy is profitable. Nothing it produces is investment advice.
- 2022 to 2026 was largely a bull market, which favours simply staying invested.
- Results on synthetic data say nothing about real markets. Yahoo Finance data is unofficial and fine for prototyping, not institution-grade.
- The public site is a read-only snapshot of results computed locally. Training and new experiments are disabled there.
06
Gallery

Tournaments: every agent on the same folds, costs and risk rules, with warnings for thin evidence. 
Evolution Lab: lineage and per-generation scores, with a note that validation gains can be selection bias.