TennisEdge's AI model finds no betting value in M. Chwalinska vs T. Gibson (Toronto on 2026-08-04) — the market is efficient, with T. Gibson favoured at 1.74.
Independent estimates of who wins, each from a different method. The blend is what the bot prices against the market.
| Method | M. Chwalinska | T. Gibson |
|---|---|---|
| Elo ratings-based, surface-weighted |
29.9% | 70.1% |
| Machine learning 29-feature gradient-boosted model |
35.6% | 64.4% |
| Serve / return point-by-point simulation |
42.4% | 57.6% |
| Blend what the bot actually prices off |
39.0% | 61.0% |
| Market implied de-vigged from the opening odds |
45.3% | 54.7% |
We publish how well these score against the closing market, including where they lose: how accurate are tennis predictions?
| Player | Surface | Elo | Record | Matches |
|---|---|---|---|---|
| M. Chwalinska | clay | 1841 | 113–59 | 172 |
| T. Gibson | hard | 1825 | 179–94 | 273 |
Our own ratings, computed from match results since 2018. Players with fewer than 5 rated matches are omitted rather than shown at a provisional starting value. Last updated June 6, 2026.
| L | M. Sawangkaew | 2 - 1 | June 29, 2026 |
| L | M. Linette | 1 - 2 | June 26, 2026 |
| L | M. Andreeva | 0 - 2 | June 6, 2026 |
| W | D. Shnaider | 0 - 2 | June 4, 2026 |
| W | A. Kalinskaya | 0 - 2 | June 3, 2026 |
| W | E. Cocciaretto | 1 - 0 | Aug. 3, 2026 |
| L | T. Maria | 0 - 2 | July 27, 2026 |
| L | M. Bouzkova | 1 - 2 | June 30, 2026 |
| L | M. Keys | 0 - 2 | June 23, 2026 |
| L | Ka. Pliskova | 2 - 0 | June 19, 2026 |
All Aug. 4, 2026 results & picks →
M. Chwalinska (A, 24, #113) vs T. Gibson (B, 22, #62) — WTA Toronto, hard, 1/32-finals
═══ MODELS vs MARKET ═══
ELO A 29.9% / B 70.1%
ML A 35.6% / B 64.4%
Ensemble A 39.0% / B 61.0%
Sim A 42.4% / B 57.6% (spw A .584 / B .600, matchup-adj serve .557 / .572; A 24 matches, B 50)
Betfair exchange ML 2.28 / 1.67 → no-vig A 42.3% / B 57.7%
Book 2.10 / 1.74 (context only; exchange is the baseline)
Pinnacle: null.
The sim (57.6% B) lands within 0.1pp of the Betfair no-vig line (57.7% B). Ensemble 61% is a
whisker above it, ML 64.4% modestly above, ELO 70.1% the lone big dissenter. Commission-adjusted
B price = 1 + 0.67×0.95 = 1.6365 → 61.1% breakeven. So the sim and the ensemble are AT or BELOW
breakeven on B; only ELO/ML sit above, and ELO is the one signal live form actively contradicts
(see shape). A-side is worse still: comm-adj 2.28 = 2.216 → 45.1% breakeven vs models 29.9–42.4%.
═══ RECENT FORM (5 most recent each; all fetched matches used for classification) ═══
A — M. Chwalinska (last match 2026-06-29 — 36 DAYS AGO)
06-29 Wimbledon R64, grass — LOST vs Sawangkaew (1663) 3s
06-26 Boodles (exho) — LOST vs Linette (1500) 3s
06-06 Roland Garros FINAL, clay — LOST vs Andreeva (2039) 6-3 6-2 (DOM against her)
06-04 RG SF, clay — WON vs Shnaider (1857) 7-6 6-4 GRIND
06-03 RG QF, clay — WON vs Kalinskaya (1820) 7-6 6-3 GRIND
(also main-draw wins over Zheng 1906 DOM, Mertens 1785 DOM, Sakkari 1734, Parry 1696 DOM —
a genuine qualifier-to-Slam-final run on CLAY. The 05-21 "Final" is the QUALIFYING final
(opp ELO 1516/1571/1575, main draw starts 05-25) — not a title, per repo convention.)
B — T. Gibson
08-03 Toronto R64, hard — WON vs Cocciaretto (1812) 6-2 3-2 (truncated/retirement — thin evidence)
07-27 Memphis QUALI, hard — LOST vs T. Maria (1500) 0-6 3-6 (severe under-performance)
06-30 Wimbledon R64, grass — LOST vs Bouzkova (1769) 3s
06-23 Eastbourne, grass — LOST vs Keys (1808) 4-6 4-6
06-19 Nottingham QF, grass — LOST vs Ka. Pliskova (1732) 5-7 4-6
(window also: wins vs Zheng 1716 GRIND, Jones 1428 GRIND; losses to Charaeva 1548, Kalieva 1469)
═══ STEP 1b — SHAPE / PATH / SHARPNESS ═══
A: FADING — huge clay peak (RG final) then straight-sets exit vs a 1663 on grass and a loss to a
1500 in an exhibition; nothing since. Plus 36 days idle.
B: FADING — 0-6 3-6 to a 1500-ELO opponent in Memphis QUALIFYING eight days ago is the single
worst datapoint on either card; the grass block is 2-4 with losses to sub-1550 opposition.
Yesterday's 6-2 3-2 over Cocciaretto reads as a retirement, so it neither confirms nor denies.
PATH: B is 1 match deep at this venue on hard, conditions-adjusted and match-sharp. A is playing
her first match of the hard swing after 36 days off AND a clay/grass → hard TRANSITION with
zero hard-court matches in the 90d window — clear rust risk. Path favours B, and the market
already knows it (B 57.7% no-vig).
MOTIVATION: nothing the data supports beyond a normal WTA-1000 R32. No speculation.
═══ FATIGUE (Step 2, brief-precomputed) ═══
A: 0 matches / 0 sets / 0 min in 14d, last match null-dated in the fatigue block, effectively
2026-06-29. Not tired — RUSTY, which is the opposite problem.
B: 2 matches 14d, 6 sets, 106 min total court time, last match 2026-08-03, back_to_back 0, age 22.
Yesterday's win was a SHORT (~2-set/truncated) win, not a 3-setter → the calibrated −4.5pp
3-set-hangover haircut does NOT apply (2-set win ≈ neutral, per the framework). 106 min over
two matches is trivial load; age 22 → recovers fast, soften anyway. Fatigue = ROUGHLY EQUAL,
no extreme spot on either side. No fatigue adjustment enters any number below.
═══ NARRATIVE (Step 3) ═══
Let-down: A's most-recent Final is 2026-06-06 (LOST) — 58 days ago, far outside any window → None.
Title recency: none (05-21 win was a qualifying final, not a title).
Venue momentum: A none at Toronto; B 1-0 this week.
Surface transition: A YES (grass/clay → hard, 36d gap). B no (hard → hard).
ELO/ranking sanity: B #62 with the higher ELO — coherent. A #113 with an ELO ~148 pts below B
despite a Slam final; her ranking lags the RG run, so if anything ELO/ranking UNDERSTATE her.
That argues against leaning on ELO's 70.1% for B — the lone dissenting model is the least
trustworthy one here.
═══ MARKET CHOICE (Step 4b) ═══
alt_markets.handicap: null — AH: not quoted. alt_markets.totals: null. alt_markets.model: null.
Exchange ML is present and plausible (2.28 / 1.67 vs book 2.10 / 1.74), so it is the edge baseline.
Sim distribution (baseline, no override justified — inputs converge with ELO/ML/market band and
A's 24-match sample is clay-heavy but the sim already lands on the market number, so shading it
would be free-handing):
ML: B 57.6% vs 61.1% breakeven → −3.5% edge. A 42.4% vs 45.1% breakeven → −2.7% edge.
Handicap/totals: no exchange quotes to price against — nothing stakeable.
Every priced market is negative or nil at the executable price. No refutation check run (PASS
candidates get no web access, per Step 4c).
═══ GATES (Step 4a) ═══
GATES
G1 edge-origin: FAIL — best pre-narrative exchange edge is NEGATIVE on both sides (B −3.5%,
A −2.7%); sim 57.6% sits on top of no-vig 57.7% and commission eats the rest. Nothing to stake.
G2 consensus: PASS(tier only) — sim+ensemble+market agree on B ~58-61%; would be capped tier
anyway since the only model clearing the bar (ELO 70%) is contradicted by B's live results.
G3 fatal-risk: PASS — n/a, no margin bet; ML would not be blocked regardless.
═══ VERDICT: PASS ═══
This is the textbook efficient match. A point-by-point sim, the ensemble and the Betfair no-vig
line agree to within a tenth of a point that Gibson is a ~58% favourite, and 1.67 after 5%
commission demands 61.1%. The one model shouting value on Gibson (ELO 70.1%) is the one whose
premise — a clean class gap — her own recent card refutes: 0-6 3-6 to a 1500-ELO player in
qualifying eight days ago, plus grass losses to sub-1550 opposition. Meanwhile the obvious
qualitative story (Chwalinska 36 days idle, surface transition, first hard-court match of the
window vs a player who won here yesterday) is real but already fully in the price — it is
precisely why a Slam finalist is a 2.28 dog. Backing Chwalinska needs 50.1%; no model gives her
above 42.4%. Backing Gibson needs 61.1%; the sim gives 57.6%. Both sides underwater, no alt
market quoted. Pass.