| Pinnacle P(Sara Bejlek) | 0.515 |
|---|---|
| Pinnacle P(Ekaterina Alexandrova) | 0.485 |
| n_books observed | 1 live |
Sharp anchor sourced via OddsAPI event_id lookup → Pinnacle no-vig computation. (Field-id mismatch fix shipped 2026-05-02 — pinnacle capture is now the source of truth for pre-match anchoring.)
| Surface | Sara Bejlek | Ekaterina Alexandrova | Diff (a−b) |
|---|---|---|---|
| hard | 1500 (0) | 1500 (0) | +0 |
| clay | 1500 (0) | 1500 (0) | +0 |
| grass | 1500 (0) | 1500 (0) | +0 |
| indoor | 1500 (0) | 1500 (0) | +0 |
| overall | 1500 (0) | 1500 (0) | +0 |
Per-surface ELO from 24h-cached global rater. Number-in-parens = matches contributing to that rating.
| Player | Archetype | n matches | Hold % | Aces / match |
|---|---|---|---|---|
| Sara Bejlek | unknown | 4 | 0.500 | 0.2 |
| Ekaterina Alexandrova | big_server | 145 | 0.708 | 5.1 |
Style matchup signal: style matchup low_data: missing archetype or surface
v0 sharp priors per tennis-betting-expert lock 2026-05-02. Display-only — NOT blended into the headline composite probability above. Promotion to wired-in pending: N≥200 archetype-tagged settled matches with closing-line capture + Brier delta ≥+0.005 vs unwired baseline + no 5pp-bucket regression. Re-evaluate post-Roland Garros (2026-06-09).
| Adjustment | Sara Bejlek | Ekaterina Alexandrova | Net |
|---|---|---|---|
| Match fatigue (14d load) | -1.50pp (load 3.0) | -3.00pp (load 7.6) | +1.50pp |
Live adjustments flowed into the headline composite probability above. Surface transition gated to documented poor-history (>15% win-rate drop in first 3 surface-change matches). Fatigue: 14-day load weighted by best-of (BO5=2.0, BO3=1.0), capped ±3pp. Tennis-betting-expert RG R1 audit 2026-05-24.
| Signal | Weight |
|---|---|
| surface_elo | 0.35 |
| recent_form | 0.18 |
| h2h_matrix | 0.16 |
| surface_transition | 0.11 |
| match_simulator | 0.10 |
| tournament_fatigue | 0.10 |
| Sum | 1.00 |
Locked weights per tennis-betting-expert composite design 2026-04-26. Signals flagged low_data are excluded; remaining weights renormalize proportionally. h2h overweighting noted in audit; will be revisited with a dedicated calibration pass after Roland Garros.
| Time | Set | Game | Score | Server | P(Sara Bejlek) | P(Ekaterina Alexandrova) | Exp games | Source |
|---|---|---|---|---|---|---|---|---|
| 22:49:10 | 3 | 4 | {'sets': [[6, 0], [0, 6]], 'current_set_games': [3, 1], 'sets_won_synthetic': True, 'point_score': ['40', '40']} | b | 0.576 | 0.424 | 30.8 | feed |
| 22:49:40 | 3 | 4 | {'sets': [[6, 0], [0, 6]], 'current_set_games': [3, 1], 'sets_won_synthetic': True, 'point_score': ['40', 'A']} | b | 0.562 | 0.438 | 30.8 | feed |
| 22:50:11 | 3 | 5 | {'sets': [[6, 0], [0, 6]], 'current_set_games': [4, 1], 'sets_won_synthetic': True, 'point_score': ['0', '0']} | b | 0.725 | 0.275 | 31.8 | feed |
| 22:50:41 | 3 | 5 | {'sets': [[6, 0], [0, 6]], 'current_set_games': [4, 1], 'sets_won_synthetic': True, 'point_score': ['0', '0']} | b | 0.722 | 0.278 | 31.7 | feed |
| 22:51:12 | 3 | 5 | {'sets': [[6, 0], [0, 6]], 'current_set_games': [4, 1], 'sets_won_synthetic': True, 'point_score': ['0', '0']} | b | 0.726 | 0.274 | 31.8 | feed |
| 22:51:43 | 3 | 5 | {'sets': [[6, 0], [0, 6]], 'current_set_games': [4, 1], 'sets_won_synthetic': True, 'point_score': ['0', '0']} | b | 0.740 | 0.260 | 31.8 | feed |
| 22:52:38 | 3 | 5 | {'sets': [[6, 0], [0, 6]], 'current_set_games': [4, 1], 'sets_won_synthetic': True, 'point_score': ['15', '15']} | b | 0.716 | 0.284 | 31.8 | feed |
| 22:53:09 | 3 | 5 | {'sets': [[6, 0], [0, 6]], 'current_set_games': [4, 1], 'sets_won_synthetic': True, 'point_score': ['30', '15']} | b | 0.745 | 0.255 | 31.9 | feed |
| 22:53:39 | 3 | 5 | {'sets': [[6, 0], [0, 6]], 'current_set_games': [4, 1], 'sets_won_synthetic': True, 'point_score': ['30', '30']} | b | 0.712 | 0.288 | 31.7 | feed |
| 22:54:10 | 3 | 5 | {'sets': [[6, 0], [0, 6]], 'current_set_games': [4, 1], 'sets_won_synthetic': True, 'point_score': ['40', '30']} | b | 0.734 | 0.266 | 31.8 | feed |
| 22:54:41 | 3 | 5 | {'sets': [[6, 0], [0, 6]], 'current_set_games': [4, 1], 'sets_won_synthetic': True, 'point_score': ['40', '40']} | b | 0.733 | 0.267 | 31.8 | feed |
| 22:55:11 | 3 | 5 | {'sets': [[6, 0], [0, 6]], 'current_set_games': [4, 1], 'sets_won_synthetic': True, 'point_score': ['40', 'A']} | b | 0.717 | 0.283 | 31.8 | feed |
| 22:55:42 | 3 | 6 | {'sets': [[6, 0], [0, 6]], 'current_set_games': [5, 1], 'sets_won_synthetic': True, 'point_score': ['0', '0']} | b | 0.859 | 0.141 | 32.7 | feed |
| 22:56:12 | 3 | 6 | {'sets': [[6, 0], [0, 6]], 'current_set_games': [5, 1], 'sets_won_synthetic': True, 'point_score': ['15', '0']} | b | 0.873 | 0.127 | 32.8 | feed |
| 22:56:43 | 3 | 6 | {'sets': [[6, 0], [0, 6]], 'current_set_games': [5, 1], 'sets_won_synthetic': True, 'point_score': ['15', '15']} | b | 0.866 | 0.134 | 32.8 | feed |
| 22:57:13 | 3 | 6 | {'sets': [[6, 0], [0, 6]], 'current_set_games': [5, 1], 'sets_won_synthetic': True, 'point_score': ['30', '30']} | b | 0.873 | 0.127 | 32.8 | feed |
| 22:57:44 | 3 | 6 | {'sets': [[6, 0], [0, 6]], 'current_set_games': [5, 1], 'sets_won_synthetic': True, 'point_score': ['40', '30']} | b | 0.871 | 0.129 | 32.8 | feed |
| 22:58:15 | 3 | 7 | {'sets': [[6, 0], [0, 6]], 'current_set_games': [5, 2], 'sets_won_synthetic': True, 'point_score': ['0', '0']} | b | 0.735 | 0.265 | 33.8 | feed |
| 22:58:45 | 3 | 7 | {'sets': [[6, 0], [0, 6]], 'current_set_games': [5, 2], 'sets_won_synthetic': True, 'point_score': ['0', '0']} | b | 0.714 | 0.286 | 33.7 | feed |
| 22:59:16 | 3 | 7 | {'sets': [[6, 0], [0, 6]], 'current_set_games': [5, 2], 'sets_won_synthetic': True, 'point_score': ['0', '0']} | b | 0.730 | 0.270 | 33.8 | feed |
| 22:59:46 | 3 | 7 | {'sets': [[6, 0], [0, 6]], 'current_set_games': [5, 2], 'sets_won_synthetic': True, 'point_score': ['0', '0']} | b | 0.728 | 0.272 | 33.8 | feed |
| 23:00:17 | 3 | 7 | {'sets': [[6, 0], [0, 6]], 'current_set_games': [5, 2], 'sets_won_synthetic': True, 'point_score': ['0', '15']} | b | 0.719 | 0.281 | 33.7 | feed |
| 23:00:47 | 3 | 7 | {'sets': [[6, 0], [0, 6]], 'current_set_games': [5, 2], 'sets_won_synthetic': True, 'point_score': ['0', '30']} | b | 0.717 | 0.283 | 33.7 | feed |
| 23:01:18 | 3 | 7 | {'sets': [[6, 0], [0, 6]], 'current_set_games': [5, 2], 'sets_won_synthetic': True, 'point_score': ['0', '30']} | b | 0.717 | 0.283 | 33.7 | feed |
| 23:01:48 | 3 | 7 | {'sets': [[6, 0], [0, 6]], 'current_set_games': [5, 2], 'sets_won_synthetic': True, 'point_score': ['15', '30']} | b | 0.719 | 0.281 | 33.8 | feed |
| 23:02:19 | 3 | 7 | {'sets': [[6, 0], [0, 6]], 'current_set_games': [5, 2], 'sets_won_synthetic': True, 'point_score': ['15', '40']} | b | 0.725 | 0.275 | 33.8 | feed |
| 23:02:49 | 3 | 7 | {'sets': [[6, 0], [0, 6]], 'current_set_games': [5, 2], 'sets_won_synthetic': True, 'point_score': ['15', '40']} | b | 0.732 | 0.268 | 33.8 | feed |
| 23:03:20 | 4 | 8 | {'sets': [[6, 0], [6, 0], [0, 6]], 'current_set_games': [6, 2], 'sets_won_synthetic': True, 'point_score': ['9', '16']} | b | 1.000 | 0.000 | 0.0 | feed |
| 23:18:42 | 4 | 8 | {'sets': [[6, 0], [6, 0], [0, 6]], 'current_set_games': [6, 2], 'sets_won_synthetic': True, 'point_score': ['9', '16']} | b | 1.000 | 0.000 | 0.0 | feed |
| 23:19:42 | 4 | 8 | {'sets': [[6, 0], [6, 0], [0, 6]], 'current_set_games': [6, 2], 'sets_won_synthetic': True, 'point_score': ['9', '16']} | b | 1.000 | 0.000 | 0.0 | feed |