The model that beat two sportsbooks and had no idea why
Our walkforward said FanDuel +4% and DraftKings +7%. Then the data behind it was destroyed, and what we rebuilt was smaller, stranger and more useful.
READ MORE →
Our walkforward said FanDuel +4% and DraftKings +7%. Then the data behind it was destroyed, and what we rebuilt was smaller, stranger and more useful.
READ MORE →
As intelligence becomes abundant, judgment becomes more scarce.
READ MORE →Slow backtests, blown memory, and the coding habits I wish I’d caught sooner.
READ MORE →
A LightGBM model made money on NFL totals at both FanDuel and DraftKings. The same-side agreement filter looked stronger, but its historical edge is a lead for one locked 2026 test, not a betting strategy.
READ MORE →
Two MLB models were profitable in a corrected 2022–2025 backtest. That is a lead worth following, not proof of an edge. Their plausible profit ranges still included losses, so the right next move is one locked-down test on new games, not another model sweep, and not capital.
READ MORE →
A strategy redesign looked dramatically better in sample. A 2022 out-of-sample test exposed the hidden leverage, and the strategy was rejected before the final holdout.
READ MORE →
A walkforward optimizer objective test using geometric Martin as the out-of-sample path-quality judge.
READ MORE →
The first job of a serious research system is not to find alpha. It is to create the infrastructure where alpha can be trusted.
READ MORE →Three systems, one thesis: reliable judgment requires infrastructure.
READ MORE →The notebook taught you theory, but not how to deploy.
READ MORE →
The code and diagrams for the strategy can be found on github. AWS Trading Part 2 Youtube video is here. Introduction In part 1 youtube video link we covered the data pipeline portion of the AWS trading bot architecture. I demonstrated how to set up your AWS environment, including creating a simple dynamoDB database to hold our price and strategy data. Then we walked through the data pipeline code in detail including how to grab the data and populate our db with it. In this post we’ll cover t
READ MORE →