Lakeshore Edge Create Free Account

Model Health

The full audit. Every input, every prediction, every miss — all visible. Red = broken. See also: methodology (how the model works) · recent losses (the math behind each losing pick) · about.

CLV Edge Closing Line Value — the sharpness test Strategy scoreboard →

CLV (Closing Line Value) asks: did we get a better price than the market ended up at? When the answer is yes, the market moved toward our side after the pick was stamped. It's the most reliable sign of a real edge — much more than a hot or cold week of W-L. For the head-to-head comparison against blindly following Pinnacle (with bootstrap 95% CIs), see the strategy scoreboard.
Crunching closing-line gaps...

Feature coverage — today's slate

What inputs the model has access to right now, by sport. Green = full coverage. Amber = partial (some games missing data). Red = the feature isn't loading and the model is using a fallback.
Reading today's edges...

Per-sport performance — where the model is winning vs losing

Same hit-rate and calibration metrics, broken down by sport. If one sport has a massively worse calibration gap than the others, it's the one dragging the headline number down — focus fixes there. Sports with n < 30 are noisy and shouldn't drive decisions.
Bucketing resolved picks by sport...

Per-sport breakdown — where the misses are coming from

Splits picks by price, by model confidence, and by bet type so you can see exactly which slices are losing. Useful when one sport is dragging the headline number down.
Computing breakdown...

Data feeds — are they all alive?

Each background refresher (pitchers, bullpens, weather, Polymarket, etc.) writes a JSON file at a known cadence. This panel reads the on-disk timestamps and flags anything running more than 1.5x its expected interval. OK = on schedule. Stale = between 1.5x and 3x late. Broken = more than 3x late or never wrote.
Reading refresher timestamps...

Odds movement — are we still tracking line changes?

Every 5 minutes the dashboard pulls FanDuel prices for each game on the slate. This panel shows where prices have moved in the last 24h, plus a heartbeat for the snapshot loop itself. If "Snapshot pulse" is STALE, the background thread died and CLV tracking will be broken until it restarts.
Loading line history...

Calibration — predicted vs actual

Across every resolved pick in the journal, picks the model called X% should win X% of the time. Dots on the diagonal = perfect. Above the diagonal = under-confident (the model is hedging too much). Below = over-confident (you're getting fewer wins than the model promises).
Bucketing resolved picks...

Decision quality — process vs result

Hit rate alone hides whether the model is finding mispriced lines or just getting lucky. Cross "won vs lost" with "beat the close vs not" and every resolved pick lands in one of four quadrants. The diagonal (Clean Win + Bad Bet) is when process and result agreed; the off-diagonal (Tough Loss + Lucky Win) is variance separating them.
Pulling resolved-pick outcomes...

Feature contribution — top picks today

The math behind each pick: where the probability started, what each input added or subtracted, and where it landed. A line at 0.0 means that input didn't move the pick.
Pulling today's top edges...