James Duckworth vs Justin Boulais
Toronto | Hard | Qualification Final
26 Jul 2025, 20:45
Comparativo de Odds
Fuente James … Justin … Prob Impl. P1
Estadísticas de Jugadores
James Duckworth
Ranking #86
UTR Rating 14,86 Pro
UTR Ranking #105
Forma L5 40% (5p)
Forma L10 50% (10p)
WR Hard 29/50 = 58,0%
Justin Boulais
Ranking #-
UTR Rating 13,69 Pro
UTR Ranking #557
Forma L5 50% (0p)
Forma L10 50% (0p)
WR Hard 7/16 = 43,8%
Momentum & Forma UTR
James Duckworth
Sin datos UTR v4
Justin Boulais
Record 2025 41W - 25L (62%)
Racha 2L
UTR Oponentes 13,4
Últimos 5:
L L W W L
Features del Modelo XGBoost (60 features)
Rankings
rank_advantage 414,0000
rank_ratio 5,8140
log_rank_ratio 1,7603
rank_tier_advantage 2,0000
points_diff 694,0000
best_rank_diff 454,0000
Superficie
surface_wr_diff 16,3721
surface_wr_diff_adjusted 13,7143
surface_matches_ratio 4,2083
surface_tournaments_won_diff 2,0000
surface_wr_p1 58,2471
surface_wr_p2 41,8750
surface_wr_p1_stable 58,0952
surface_wr_p2_stable 42,8571
p1_surface_matches 101,0000
p2_surface_matches 24,0000
p1_surface_dominance 0,1683
Confianza
p1_confidence 1,0000
p2_confidence 0,8000
combined_confidence 0,9000
Servicio
serve_quality_diff 14,0446
first_serve_won_diff 9,0987
second_serve_won_diff 0,8354
bp_saved_diff 7,2899
bp_converted_diff -5,8492
aces_per_match_diff 4,6223
Forma
last5_wr_diff -0,1000
last3_wr_diff 0,1667
momentum_p1 50,0000
momentum_p2 50,0000
momentum_diff 0,0000
weighted_momentum_diff 26,6300
current_streak_diff -1,0000
days_since_last_match_p1 8,0000
days_since_last_match_p2 30,0000
match_load_p1 3,0000
match_load_p2 0,0000
match_load_diff 3,0000
H2H
h2h_wins_diff 0,0000
h2h_matches 0,0000
h2h_win_rate_p1 0,5000
h2h_on_surface 0,0000
h2h_recency_weighted 0,5000
h2h_confidence_score 0,0000
Consistencia
winner_ue_ratio_p1 0,6340
winner_ue_ratio_p2 0,0000
tiebreak_wr_p1 0,5476
tiebreak_wr_p2 0,0000
serve_consistency_p1 3,4012
serve_consistency_p2 10,0000
Interacción
surface_rank_synergy 28,8191
rank_surface_mismatch_p1 0,3315
rank_surface_mismatch_p2 -0,3328
elite_surface_amplifier 32,7441
UTR
utr_diff 1,1700
utr_p1 0,8071
utr_p2 0,6694
utr_advantage 8,1961
utr_both_pro 1,0000
utr_available 1,0000
utr_expected_prob 0,0000
utr_closeness 0,0000
utr_data_quality 0,0000
Top 10 Features (Modelo)
utr_advantage 0,1048
utr_diff 0,0861
surface_wr_diff 0,0678
points_diff 0,0255
surface_rank_synergy 0,0236
h2h_win_rate_p1 0,0231
utr_both_pro 0,0206
rank_ratio 0,0174
rank_advantage 0,0169
surface_wr_diff_adjusted 0,0167
Info del Partido
Match ID 7384
API ID 14278954
Gamdom ID -
Torneo Toronto
Superficie Hard
Ronda Qualification Final
Status finished
JSON Data
{
  "match": {
    "id": 7384,
    "api_id": 14278954,
    "gamdom_id": null,
    "player1": "James Duckworth",
    "player2": "Justin Boulais",
    "tournament": "Toronto",
    "surface": "hard",
    "round": "Qualification Final",
    "date": "2025-07-26T16:45:00+00:00",
    "status": "finished"
  },
  "odds": {
    "sofascore": {
      "p1": null,
      "p2": null
    },
    "gamdom": {
      "p1": null,
      "p2": null
    },
    "tnnslive": {
      "p1": null,
      "p2": null
    }
  },
  "prediction": null,
  "player_stats": {
    "p1": {
      "ranking": 86,
      "utr_singles": 14.86,
      "utr_ranking": 105,
      "utr_division": "Pro",
      "utr_pro": true,
      "utr_v4_available": false,
      "wr_surface": 57.99999999999999,
      "wr_surface_wins": 29,
      "wr_surface_total": 50,
      "wr_surface_source": "TennisPlayerYearStats",
      "form_l5_wr": 40.0,
      "form_l10_wr": 50.0,
      "form_l5_matches": 5,
      "form_l10_matches": 10
    },
    "p2": {
      "ranking": null,
      "utr_singles": 13.69,
      "utr_ranking": 557,
      "utr_division": "Pro",
      "utr_pro": true,
      "utr_v4_wins": 41,
      "utr_v4_losses": 25,
      "utr_v4_wr": 62.121212121212125,
      "utr_v4_win_streak": 0,
      "utr_v4_lose_streak": 2,
      "utr_v4_avg_opp_utr": 13.44,
      "utr_v4_recent": [
        {
          "win": false,
          "opponent_utr": 13.43,
          "opponent_name": "Tristan McCormick"
        },
        {
          "win": false,
          "opponent_utr": 13.88,
          "opponent_name": "Cannon Kingsley"
        },
        {
          "win": true,
          "opponent_utr": 13.51,
          "opponent_name": "Arda Azkara"
        },
        {
          "win": true,
          "opponent_utr": 14.38,
          "opponent_name": "Trevor Svajda"
        },
        {
          "win": false,
          "opponent_utr": 14.25,
          "opponent_name": "Mats Rosenkranz"
        }
      ],
      "utr_v4_synced": "2025-12-07T19:57:03.036256+00:00",
      "utr_v4_available": true,
      "wr_surface": 43.75,
      "wr_surface_wins": 7,
      "wr_surface_total": 16,
      "wr_surface_source": "TennisPlayerYearStats",
      "form_l5_wr": 50,
      "form_l10_wr": 50,
      "form_l5_matches": 0,
      "form_l10_matches": 0
    }
  },
  "utr": {
    "p1": {
      "score": 14.86,
      "ranking": 105,
      "division": "Pro",
      "is_pro": true
    },
    "p2": {
      "score": 13.69,
      "ranking": 557,
      "division": "Pro",
      "is_pro": true
    }
  },
  "features": {
    "rank_advantage": 414,
    "rank_ratio": 5.813953488372093,
    "log_rank_ratio": 1.7602608021686839,
    "rank_tier_advantage": 2,
    "points_diff": 694,
    "best_rank_diff": 454,
    "surface_wr_diff": 16.372058823529407,
    "surface_wr_diff_adjusted": 13.714285714285724,
    "surface_matches_ratio": 4.208333333333333,
    "surface_tournaments_won_diff": 2,
    "surface_wr_p1": 58.24705882352941,
    "surface_wr_p2": 41.875,
    "surface_wr_p1_stable": 58.0952380952381,
    "surface_wr_p2_stable": 42.857142857142854,
    "p1_surface_matches": 101,
    "p2_surface_matches": 24,
    "p1_surface_dominance": 0.16831683168316833,
    "p1_confidence": 1.0,
    "p2_confidence": 0.8,
    "combined_confidence": 0.9,
    "serve_quality_diff": 14.044555588235298,
    "first_serve_won_diff": 9.098749999999995,
    "second_serve_won_diff": 0.8354058823529513,
    "bp_saved_diff": 7.2899338235294096,
    "bp_converted_diff": -5.849226470588235,
    "aces_per_match_diff": 4.622279411764707,
    "last5_wr_diff": -0.09999999999999998,
    "last3_wr_diff": 0.16666666666666663,
    "momentum_p1": 50.0,
    "momentum_p2": 50.0,
    "momentum_diff": 0.0,
    "weighted_momentum_diff": 26.629999999999995,
    "current_streak_diff": -1,
    "days_since_last_match_p1": 8,
    "days_since_last_match_p2": 30,
    "match_load_p1": 3,
    "match_load_p2": 0,
    "match_load_diff": 3,
    "h2h_wins_diff": 0,
    "h2h_matches": 0,
    "h2h_win_rate_p1": 0.5,
    "h2h_on_surface": 0,
    "h2h_recency_weighted": 0.5,
    "h2h_confidence_score": 0.0,
    "winner_ue_ratio_p1": 0.6340425531914894,
    "winner_ue_ratio_p2": 0.0,
    "tiebreak_wr_p1": 0.5476190476190477,
    "tiebreak_wr_p2": 0.0,
    "serve_consistency_p1": 3.401221197227621,
    "serve_consistency_p2": 10.0,
    "surface_rank_synergy": 28.819093397858754,
    "rank_surface_mismatch_p1": 0.33152941176470596,
    "rank_surface_mismatch_p2": -0.33275000000000005,
    "elite_surface_amplifier": 32.744117647058815,
    "utr_diff": 1.17,
    "utr_p1": 0.8070588235294117,
    "utr_p2": 0.6694117647058823,
    "utr_advantage": 8.196147110332749,
    "utr_both_pro": 1.0,
    "utr_available": 1.0
  },
  "feature_importance": {
    "rank_advantage": "0.0169",
    "rank_ratio": "0.0174",
    "log_rank_ratio": "0.0143",
    "rank_tier_advantage": "0.0139",
    "points_diff": "0.0255",
    "best_rank_diff": "0.0159",
    "surface_wr_diff": "0.0678",
    "surface_wr_diff_adjusted": "0.0167",
    "surface_matches_ratio": "0.0116",
    "surface_tournaments_won_diff": "0.0111",
    "surface_wr_p1": "0.0151",
    "surface_wr_p2": "0.0144",
    "surface_wr_p1_stable": "0.0117",
    "surface_wr_p2_stable": "0.0112",
    "p1_surface_matches": "0.0109",
    "p2_surface_matches": "0.0118",
    "p1_surface_dominance": "0.0132",
    "p1_confidence": "0.0121",
    "p2_confidence": "0.0124",
    "combined_confidence": "0.0116",
    "serve_quality_diff": "0.0108",
    "first_serve_won_diff": "0.0119",
    "second_serve_won_diff": "0.0114",
    "bp_saved_diff": "0.0106",
    "bp_converted_diff": "0.0112",
    "aces_per_match_diff": "0.0103",
    "last5_wr_diff": "0.0127",
    "last3_wr_diff": "0.012",
    "momentum_p1": "0.0106",
    "momentum_p2": "0.0108",
    "momentum_diff": "0.0126",
    "weighted_momentum_diff": "0.0134",
    "current_streak_diff": "0.0109",
    "days_since_last_match_p1": "0.0114",
    "days_since_last_match_p2": "0.0107",
    "match_load_p1": "0.0104",
    "match_load_p2": "0.0107",
    "match_load_diff": "0.0107",
    "h2h_wins_diff": "0.0131",
    "h2h_matches": "0.0098",
    "h2h_win_rate_p1": "0.0231",
    "h2h_on_surface": "0.0106",
    "h2h_recency_weighted": "0.0133",
    "h2h_confidence_score": "0.011",
    "winner_ue_ratio_p1": "0.0122",
    "winner_ue_ratio_p2": "0.0127",
    "tiebreak_wr_p1": "0.012",
    "tiebreak_wr_p2": "0.0108",
    "serve_consistency_p1": "0.0109",
    "serve_consistency_p2": "0.011",
    "surface_rank_synergy": "0.0236",
    "rank_surface_mismatch_p1": "0.0124",
    "rank_surface_mismatch_p2": "0.0114",
    "elite_surface_amplifier": "0.015",
    "utr_diff": "0.0861",
    "utr_p1": "0.0119",
    "utr_p2": "0.0107",
    "utr_advantage": "0.1048",
    "utr_both_pro": "0.0206",
    "utr_available": "0.0143"
  }
}