Mirra Andreeva vs Anastasia Potapova

hard wta grand_slam best of 3 tennis_wta_us_open · commence 2026-09-07 15:00:00+00:00 · completed winner: a

P(Mirra Andreeva) = 1.000  |  P(Anastasia Potapova) = 0.000
live composite (last tick)

Sharp anchor — Pinnacle pre-match

Pinnacle P(Mirra Andreeva) 0.823
Pinnacle P(Anastasia Potapova) 0.177
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 ELO radar

Surface Mirra AndreevaAnastasia Potapova 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.

Style matchup (display-only · v0 priors · NOT in headline)

Player Archetype n matches Hold % Aces / match
Mirra Andreeva aggressive_baseliner 37 0.692 2.6
Anastasia Potapova all_court 119 0.618 2.1

Matchup adjustment: +0.00pp toward Anastasia Potapova on hard.

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).

Composite adjustments (live)

AdjustmentMirra AndreevaAnastasia PotapovaNet
Match fatigue (14d load) -1.50pp (load 3.0) -1.50pp (load 3.0) +0.00pp

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.

Composite signal weights

SignalWeight
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.

Live trajectory (200 ticks)

Time Set Game Score Server P(Mirra Andreeva) P(Anastasia Potapova) Exp games Source
17:21:47 3 7 {'sets': [[6, 0], [0, 6]], 'current_set_games': [4, 3], 'sets_won_synthetic': True, 'point_score': ['0', '0']} b 0.504 0.496 37.7 feed
17:22:18 3 7 {'sets': [[6, 0], [0, 6]], 'current_set_games': [4, 3], 'sets_won_synthetic': True, 'point_score': ['0', '0']} b 0.502 0.498 37.8 feed
17:22:55 3 7 {'sets': [[6, 0], [0, 6]], 'current_set_games': [4, 3], 'sets_won_synthetic': True, 'point_score': ['0', '0']} b 0.495 0.504 37.7 feed
17:23:26 3 7 {'sets': [[6, 0], [0, 6]], 'current_set_games': [4, 3], 'sets_won_synthetic': True, 'point_score': ['0', '0']} b 0.511 0.489 37.8 feed
17:23:57 3 7 {'sets': [[6, 0], [0, 6]], 'current_set_games': [4, 3], 'sets_won_synthetic': True, 'point_score': ['0', '15']} b 0.483 0.516 37.8 feed
17:24:27 3 7 {'sets': [[6, 0], [0, 6]], 'current_set_games': [4, 3], 'sets_won_synthetic': True, 'point_score': ['0', '30']} b 0.497 0.503 37.8 feed
17:24:58 3 7 {'sets': [[6, 0], [0, 6]], 'current_set_games': [4, 3], 'sets_won_synthetic': True, 'point_score': ['15', '30']} b 0.505 0.495 37.8 feed
17:25:28 3 7 {'sets': [[6, 0], [0, 6]], 'current_set_games': [4, 3], 'sets_won_synthetic': True, 'point_score': ['15', '40']} b 0.488 0.512 37.8 feed
17:25:59 3 7 {'sets': [[6, 0], [0, 6]], 'current_set_games': [4, 3], 'sets_won_synthetic': True, 'point_score': ['15', '40']} b 0.506 0.494 37.9 feed
17:26:29 3 7 {'sets': [[6, 0], [0, 6]], 'current_set_games': [4, 3], 'sets_won_synthetic': True, 'point_score': ['30', '40']} b 0.496 0.504 37.7 feed
17:27:00 3 8 {'sets': [[6, 0], [0, 6]], 'current_set_games': [5, 3], 'sets_won_synthetic': True, 'point_score': ['0', '0']} b 0.566 0.434 38.7 feed
17:27:31 3 8 {'sets': [[6, 0], [0, 6]], 'current_set_games': [5, 3], 'sets_won_synthetic': True, 'point_score': ['0', '15']} b 0.587 0.413 38.8 feed
17:28:01 3 8 {'sets': [[6, 0], [0, 6]], 'current_set_games': [5, 3], 'sets_won_synthetic': True, 'point_score': ['0', '15']} b 0.580 0.420 38.8 feed
17:28:32 3 8 {'sets': [[6, 0], [0, 6]], 'current_set_games': [5, 3], 'sets_won_synthetic': True, 'point_score': ['0', '15']} b 0.574 0.426 38.7 feed
17:29:02 3 8 {'sets': [[6, 0], [0, 6]], 'current_set_games': [5, 3], 'sets_won_synthetic': True, 'point_score': ['0', '15']} b 0.571 0.429 38.8 feed
17:29:33 3 8 {'sets': [[6, 0], [0, 6]], 'current_set_games': [5, 3], 'sets_won_synthetic': True, 'point_score': ['0', '15']} b 0.571 0.429 38.8 feed
17:30:03 3 8 {'sets': [[6, 0], [0, 6]], 'current_set_games': [5, 3], 'sets_won_synthetic': True, 'point_score': ['0', '15']} b 0.569 0.431 38.8 feed
17:30:34 3 8 {'sets': [[6, 0], [0, 6]], 'current_set_games': [5, 3], 'sets_won_synthetic': True, 'point_score': ['0', '15']} b 0.587 0.413 38.8 feed
17:31:04 3 8 {'sets': [[6, 0], [0, 6]], 'current_set_games': [5, 3], 'sets_won_synthetic': True, 'point_score': ['0', '15']} b 0.558 0.442 38.8 feed
17:31:36 3 0 {'sets': [[6, 0], [0, 6]], 'current_set_games': [0, 0], 'sets_won_synthetic': True, 'point_score': ['0', '15']} b 0.505 0.495 30.8 feed
17:32:06 3 0 {'sets': [[6, 0], [0, 6]], 'current_set_games': [0, 0], 'sets_won_synthetic': True, 'point_score': ['0', '15']} b 0.501 0.499 30.8 feed
17:32:37 3 0 {'sets': [[6, 0], [0, 6]], 'current_set_games': [0, 0], 'sets_won_synthetic': True, 'point_score': ['0', '15']} b 0.493 0.506 30.8 feed
17:33:07 3 0 {'sets': [[6, 0], [0, 6]], 'current_set_games': [0, 0], 'sets_won_synthetic': True, 'point_score': ['0', '15']} b 0.506 0.494 30.8 feed
17:33:38 3 0 {'sets': [[6, 0], [0, 6]], 'current_set_games': [0, 0], 'sets_won_synthetic': True, 'point_score': ['0', '15']} b 0.503 0.497 30.8 feed
17:34:08 3 0 {'sets': [[6, 0], [0, 6]], 'current_set_games': [0, 0], 'sets_won_synthetic': True, 'point_score': ['0', '15']} b 0.504 0.496 30.8 feed
17:34:39 3 0 {'sets': [[6, 0], [0, 6]], 'current_set_games': [0, 0], 'sets_won_synthetic': True, 'point_score': ['0', '15']} b 0.502 0.498 30.7 feed
17:35:09 3 0 {'sets': [[6, 0], [0, 6]], 'current_set_games': [0, 0], 'sets_won_synthetic': True, 'point_score': ['0', '15']} b 0.504 0.496 30.8 feed
17:35:40 3 8 {'sets': [[6, 0], [0, 6]], 'current_set_games': [5, 3], 'sets_won_synthetic': True, 'point_score': ['0', '30']} b 0.562 0.438 38.8 feed
17:36:11 3 8 {'sets': [[6, 0], [0, 6]], 'current_set_games': [5, 3], 'sets_won_synthetic': True, 'point_score': ['0', '40']} b 0.579 0.421 38.8 feed
17:36:41 4 9 {'sets': [[6, 0], [6, 0], [0, 6]], 'current_set_games': [6, 3], 'sets_won_synthetic': True, 'point_score': ['14', '17']} b 1.000 0.000 0.0 feed

Showing last 30 of 200 ticks.

Tennis variance: best-of-3 single-match outcomes are noisy. Composite + trajectory shown for transparency, not as a tout. Use closing-line comparison (vs Pinnacle anchor above) as the canonical edge metric.