2026-07-17
A volatility input had been six days stale
A request for a 16-hour window was being silently truncated upstream, so one asset's volatility estimate described a period from the previous week. Every statistic that touched it — three months of it — was invalidated and the clock restarted. The asset was pulled from live trading the same day.
3 months voided
2026-07-17
We were reconstructing outcomes we could simply have looked up
Settlement results were being inferred from price rather than read from the exchange's own record. The inference was wrong on roughly one market in six, inflating measured win rate from .24 to .33 and manufacturing three separate "discoveries" that did not exist. All three were withdrawn.
3 results withdrawn
2026-06-26
Paper profit was two to four times the achievable profit
Simulated fills assumed we bought at the price the signal fired at. Re-pricing every entry against the recorded book showed the gap concentrated in exactly the trades that looked best. We built an adversarial fill model, and now report the number it produces alongside the raw one.
model rebuilt
2026-07-17
A third asset looked ready and was not
One asset had passed enough checks to be discussed as a live candidate. Measured on the exchange's real settlements rather than our reconstruction, its expected value per trade was negative. It was not deployed, and it is still not deployed.
not deployed
2026-06-26
A $20,000 result that used information from the future
One strategy family showed an exceptional return. The entry condition turned out to depend on data that only existed after the decision point — a lookahead leak. The result was struck from the record rather than quietly retired.
struck