Aryna Sabalenka vs Taylor Townsend

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

P(Aryna Sabalenka) = 1.000  |  P(Taylor Townsend) = 0.000
live composite (last tick)

Sharp anchor — Pinnacle pre-match

Pinnacle P(Aryna Sabalenka) 0.814
Pinnacle P(Taylor Townsend) 0.186
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 Aryna SabalenkaTaylor Townsend 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
Aryna Sabalenka big_server 190 0.750 5.3
Taylor Townsend big_server 42 0.751 5.1

Matchup adjustment: +0.00pp toward Taylor Townsend 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)

AdjustmentAryna SabalenkaTaylor TownsendNet
Match fatigue (14d load) -2.00pp (load 4.0) -1.65pp (load 3.3) -0.35pp

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 (149 ticks)

Time Set Game Score Server P(Aryna Sabalenka) P(Taylor Townsend) Exp games Source
16:47:33 2 6 {'sets': [[6, 0]], 'current_set_games': [3, 3], 'sets_won_synthetic': True, 'point_score': ['0', '0']} b 0.731 0.269 30.7 feed
16:48:03 2 6 {'sets': [[6, 0]], 'current_set_games': [3, 3], 'sets_won_synthetic': True, 'point_score': ['0', '0']} b 0.760 0.240 30.7 feed
16:48:34 2 6 {'sets': [[6, 0]], 'current_set_games': [3, 3], 'sets_won_synthetic': True, 'point_score': ['0', '15']} b 0.764 0.236 30.6 feed
16:49:05 2 6 {'sets': [[6, 0]], 'current_set_games': [3, 3], 'sets_won_synthetic': True, 'point_score': ['0', '30']} b 0.757 0.243 30.6 feed
16:49:36 2 6 {'sets': [[6, 0]], 'current_set_games': [3, 3], 'sets_won_synthetic': True, 'point_score': ['15', '40']} b 0.762 0.238 30.5 feed
16:50:06 2 7 {'sets': [[6, 0]], 'current_set_games': [4, 3], 'sets_won_synthetic': True, 'point_score': ['0', '0']} b 0.750 0.250 31.6 feed
16:50:37 2 7 {'sets': [[6, 0]], 'current_set_games': [4, 3], 'sets_won_synthetic': True, 'point_score': ['0', '0']} b 0.730 0.270 31.8 feed
16:51:18 2 7 {'sets': [[6, 0]], 'current_set_games': [4, 3], 'sets_won_synthetic': True, 'point_score': ['0', '0']} b 0.749 0.251 31.6 feed
16:51:48 2 7 {'sets': [[6, 0]], 'current_set_games': [4, 3], 'sets_won_synthetic': True, 'point_score': ['0', '0']} b 0.733 0.267 31.5 feed
16:52:34 2 7 {'sets': [[6, 0]], 'current_set_games': [4, 3], 'sets_won_synthetic': True, 'point_score': ['0', '40']} b 0.741 0.259 31.8 feed
16:53:05 2 8 {'sets': [[6, 0]], 'current_set_games': [5, 3], 'sets_won_synthetic': True, 'point_score': ['0', '0']} b 0.792 0.208 31.9 feed
16:53:35 2 8 {'sets': [[6, 0]], 'current_set_games': [5, 3], 'sets_won_synthetic': True, 'point_score': ['0', '15']} b 0.764 0.236 32.1 feed
16:54:06 2 8 {'sets': [[6, 0]], 'current_set_games': [5, 3], 'sets_won_synthetic': True, 'point_score': ['0', '15']} b 0.783 0.217 32.0 feed
16:54:37 2 8 {'sets': [[6, 0]], 'current_set_games': [5, 3], 'sets_won_synthetic': True, 'point_score': ['15', '15']} b 0.793 0.207 32.0 feed
16:55:07 2 8 {'sets': [[6, 0]], 'current_set_games': [5, 3], 'sets_won_synthetic': True, 'point_score': ['15', '30']} b 0.784 0.216 31.9 feed
16:55:38 2 8 {'sets': [[6, 0]], 'current_set_games': [5, 3], 'sets_won_synthetic': True, 'point_score': ['15', '40']} b 0.790 0.210 32.0 feed
16:56:08 2 8 {'sets': [[6, 0]], 'current_set_games': [5, 3], 'sets_won_synthetic': True, 'point_score': ['15', '40']} b 0.772 0.228 32.1 feed
16:56:39 2 8 {'sets': [[6, 0]], 'current_set_games': [5, 3], 'sets_won_synthetic': True, 'point_score': ['30', '40']} b 0.786 0.214 31.9 feed
16:57:10 3 9 {'sets': [[6, 0], [6, 0]], 'current_set_games': [6, 3], 'sets_won_synthetic': True, 'point_score': ['7', '12']} b 1.000 0.000 0.0 feed
17:12:37 3 9 {'sets': [[6, 0], [6, 0]], 'current_set_games': [6, 3], 'sets_won_synthetic': True, 'point_score': ['7', '12']} b 1.000 0.000 0.0 feed
17:13:37 3 9 {'sets': [[6, 0], [6, 0]], 'current_set_games': [6, 3], 'sets_won_synthetic': True, 'point_score': ['7', '12']} b 1.000 0.000 0.0 feed
17:14:37 3 9 {'sets': [[6, 0], [6, 0]], 'current_set_games': [6, 3], 'sets_won_synthetic': True, 'point_score': ['7', '12']} b 1.000 0.000 0.0 feed
17:15:37 3 9 {'sets': [[6, 0], [6, 0]], 'current_set_games': [6, 3], 'sets_won_synthetic': True, 'point_score': ['7', '12']} b 1.000 0.000 0.0 feed
17:16:37 3 9 {'sets': [[6, 0], [6, 0]], 'current_set_games': [6, 3], 'sets_won_synthetic': True, 'point_score': ['7', '12']} b 1.000 0.000 0.0 feed
17:17:37 3 9 {'sets': [[6, 0], [6, 0]], 'current_set_games': [6, 3], 'sets_won_synthetic': True, 'point_score': ['7', '12']} b 1.000 0.000 0.0 feed
17:18:37 3 9 {'sets': [[6, 0], [6, 0]], 'current_set_games': [6, 3], 'sets_won_synthetic': True, 'point_score': ['7', '12']} b 1.000 0.000 0.0 feed
17:19:37 3 9 {'sets': [[6, 0], [6, 0]], 'current_set_games': [6, 3], 'sets_won_synthetic': True, 'point_score': ['7', '12']} b 1.000 0.000 0.0 feed
17:20:38 3 9 {'sets': [[6, 0], [6, 0]], 'current_set_games': [6, 3], 'sets_won_synthetic': True, 'point_score': ['7', '12']} b 1.000 0.000 0.0 feed
17:21:41 3 9 {'sets': [[6, 0], [6, 0]], 'current_set_games': [6, 3], 'sets_won_synthetic': True, 'point_score': ['7', '12']} b 1.000 0.000 0.0 feed
17:23:03 3 9 {'sets': [[6, 0], [6, 0]], 'current_set_games': [6, 3], 'sets_won_synthetic': True, 'point_score': ['7', '12']} b 1.000 0.000 0.0 feed

Showing last 30 of 149 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.